实验2
实验任务1:
#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; }

5/7*100,5*100/7,100/7*5
1.5/7=0,0*100=0
2.5*100=500,500/7=71
3.100/7=14,14*5=70
d,e,f计算结果不同的原因是line6-8中整形变量除法是整除
实验任务2:
#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; }

d:按十进制整数输出,c:按字符输出,s:按字符串输出,f:按小数输出;字母前数字:输出数据宽度,宽度不足左补空格,宽度小于实际宽度按实际输出,字母前小数:对实数,指定小数点后位数,对字符串,指定实际输出宽度 c:按字符输出 s:按字符串输出
实验任务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("%.1lf,%.1lf\n",x,y); return 0; }

实验任务4:
#include <stdio.h> int main() { char x; x = getchar(); if(x<=57&&x>=48) // ÅжÏxÊÇÊý×Ö×Ö·û±í´ïʽ printf("%cÊÇÊý×Ö×Ö·û\n", x); else if(x<=90&&x>=65||x>=97&&x<=122) // ÅжÏxÊÇ´óд»òСдӢÎÄ×ÖĸµÄ±í´ïʽ printf("%cÊÇÓ¢ÎÄ×Öĸ\n", x); else printf("%cÊÇÆäËü×Ö·û\n", x); return 0; }



实验任务5:
#include <stdio.h> int main() { char ans1, ans2; printf("¸´Ï°ÁËû? (ÊäÈëy»òY±íʾ¸´Ï°ÁË£¬ÊäÈën»òN±íʾû¸´Ï°) : "); ans1 = getchar(); // ´Ó¼üÅÌÊäÈëÒ»¸ö×Ö·û£¬¸³Öµ¸øans1 getchar(); // ˼¿¼ÕâÀïΪʲôҪ¼ÓÕâÒ»ÐÐ printf("\n¶¯ÊÖÇôúÂëÁËû? (ÊäÈëy»òY±íʾÇÃÁË£¬ÊäÈën»òN±íʾľÓÐÇÃ) : "); ans2 = getchar(); if((ans1=='y'||ans1=='Y')&&(ans2=='y'||ans2=='Y')) printf("\nÂÞÂí²»ÊÇÒ»Ì콨³ÉµÄ:)\n"); else printf("\nÂÞÂí²»ÊÇÒ»Ìì»ÙÃðµÄ¡£¡£¡£\n"); return 0; }

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


浙公网安备 33010602011771号