实验二

#include <stdio.h>
int main() {
int a=5, b=7, c=100, d, e, f;
d = a/b*c;
e = a*c/b;
f = c/b*a;
printf("d=%d, e=%d, f=%d\n",d,e,f);
return 0;
}

line6:5/7=0;0*100=0
line7:5*100=500;500/7=71
line8:100/7=14;14*5=70
原因:a,b,c为整型,从左往右计算
#include <stdio.h>
int main() {
int x=1234;
float f=123.456;
double m=123.456;
char ch='a';
char a[]="Hello, world!";
int y=3, z=4;
printf("%d %d\n", y, z);
printf("y=%d, z=%d\n", y,z);
printf("%8d,%2d\n", x,x);
printf("%f, %8f, %8.1f, %0.2f, %.2e\n",f,f,f,f,f);
printf("%lf\n",m);
printf("%3c\n", ch);
printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a);
return 0;
}

line12中;%d 的作用为将某数按十进制整数输出
line13中:y=%d 前面有普通字符将普通字符一起输出
line14中:%8d 表示输出数占8位,不足左补空格;%2d 由于原本数占4位,故输出原始数据,保证原数据不丢失
line15中:%f 的作用为将某数按单精度浮点型数据输出;%8f 表示输出数占8位;%8.1f 表示输出数占8位,不足补空格,保留一位小数;%0.2f 表示输出数保留两位小数;%.2e 表示取前两位并以e为指数
line16中:%lf 表示定义输出数为双精度数
line17中:%3c 表示按字符输出
line18中:%s 表示按字符串输出,%15s 表示按字符串输出,占15位,不足左补空格;%10.5 表示占10位,取前五位字符串;%2.5 表示取前五位字符串,占两位,但因为原字符串占5位故输出原数据;%.3表示取前三位字符
#include <stdio.h>
int main() {
double x,y;
char c1,c2,c3;
int a1,a2,a3;
scanf("%d%d%d",&a1,&a2,&a3);
printf("%d,%d,%d\n",a1,a2,a3);
scanf(" %c%c%c",&c1,&c2,&c3);
printf("%c%c%c\n",c1,c2,c3);
scanf("%lf,%lf",&x,&y);
printf("%f,%lf\n",x,y);
return 0;
} 

#include <stdio.h>
int main() {
char x;
x = getchar();
if(x>=48&&x<=57)
printf("%c是数字字符\n", x);
else if(x>=65&&x<=90||x>=97&&x<=122)
printf("%c是英文字母\n", x);
else
printf("%c是其它字符\n", x);
return 0;
}

#include <stdio.h>
int main() {
char ans1, ans2;
printf("复习了没? (输入y或Y表示复习了,输入n或N表示没复习) : ");
ans1 = getchar(); 
getchar();
printf("\n动手敲代码了没? (输入y或Y表示敲了,输入n或N表示木有敲) : ");
ans2 = getchar();
if((ans1==121||ans1==89)&&(ans2==121||ans2==89))
printf("\n罗马不是一天建成的:)\n");
else
printf("\n罗马不是一天毁灭的。。。\n");
return 0;
}

#include <stdio.h>
#include <math.h>
int main(){
    int n,sum;
    scanf("%d",&n);
    sum=pow(2,n)-1;
    printf("n = %d时,sum = %d",n,sum);
    return 0;
} 

#include <stdio.h>
#include <windows.h>
#include <stdlib.h>

int main(){
    int i,j,m;
    j=1;
    do{
        for(i=0;i<10;i++){
            if (i<=(10-j)&&i>=j){
            printf(" O ");
            printf("    ");
        }
            else{
            printf("    ");
        }
        }
        printf("\n");
        for(i=0;i<10;i++){
            if (i<=(10-j)&&i>=j){
            printf("<H>");
            printf("    ");
        }
            else{
            printf("    ");
        }
        }
        printf("\n");
        for(i=0;i<10;i++){
            if (i<=(10-j)&&i>=j){
            printf("I I");
            printf("    ");
        }
            else{
            printf("    ");
        }
        }
        printf("\n");
        j=j+1;        
    }while(j<=5);
    m=1;
    do{
        system("color 00");
        Sleep (100);
        system("color 01");
        Sleep (100);
        system("color 02");
        Sleep (100);
        system("color 03");
        Sleep (100);
        system("color 04");
        Sleep (100);
        system("color 05");
        Sleep (100);
        system("color 06");
        Sleep (100);
        system("color 07");
        Sleep (100);
        system("color 08");
        Sleep (100);
        system("color 09");
        Sleep (100);
        system("color 0a");
        Sleep (100);
        system("color 0b");
        Sleep (100);
        system("color 0c");
        Sleep (100);
        system("color 0d");
        Sleep (100);
        system("color 0e");
        Sleep (100);
        system("color 0f");
        Sleep (100);
    }while(m==1);
    return 0;
} 

只做到打印小人并且定时变色,不会移动

posted @ 2020-10-29 22:21  GHao831  阅读(103)  评论(1)    收藏  举报