第二次实验
实验任务1
1.
//格式化输入.输出函数的简单应用 #include<stdio.h> int main(){ int num; scanf("%d",&num); printf("2049%04d\n",num); scanf("%d",&num); printf("2049%04d\n",num); scanf("%d",&num); printf("2049%04d\n",num); return 0; }

2.指定以宽度4的格式输出,且指定左面不使用的空位置自动填0。
3.
//格式化输入.输出函数的简单应用 #include<stdio.h> int main(){ int num,i; i=1; while(i<=3) { scanf("%d",&num); printf("2049%04d\n",num); i++; } return 0; }

实验任务2
1.
//格式化输入输出函数,及各种格式控制符的使用 #include <stdio.h> int main(){ int x=1234; float f=123.456; double m=123.456; char ch='a'; char a[]="Hello,world!";//定义一个字符型数组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("%1f\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; }

2.
%d:按十进制整数输出
%f:按浮点型输出
%c:按字符输出
%s:按字符串输出
%8.1f:按浮点型输出,字段宽度为8,小数点后一位
%.2f:按浮点型输出,小数点后两位
%lf:输出浮点型双精度数据
%ld:以十进制输出有符号长整型数据
实验任务3
1.
#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; }
2
.
实验任务4
1.
#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')) // 待补足,判断用户回答ans1和ans2都是小写y或大写Y printf("\n罗马不是一天建成的:)\n"); else printf("\n罗马不是一天毁灭的。。。\n"); return 0; }
2.



实验任务5
1.
// 判断字符类型 #include <stdio.h> int main() { char x; x = getchar(); if( x<='9'&&x>='0') // 待补足①,判断x是数字字符表达式 printf("%c是数字字符\n", x); else if( x>='a'&&x<='z'||x>='A'&&x<='Z') // 待补足②,判断x是大写或小写英文字母的表达式 printf("%c是英文字母\n", x); else printf("%c是其它字符\n", x); return 0; }
2.



实验任务6
1.
#include <math.h> #include <stdio.h> int main(){ int n,sum; printf("请从键盘输入一个1到10之间的正整数\n"); while(1){ scanf("%d",&n); sum=1*(1-pow(2,(n+1)))/(1-2); printf("n=%d时, sum=%d\n",n,sum); } return 0; }
2.

实验任务7
1.
//打印字符小人阵列 #include <stdio.h> int main(){ int line,i,m,n; line=1; while(line<=5) { n=-2*line+11; m=4*line-4; i=1; while(i<=m){ printf(" "); i++; } i=1; while(i<=n){ printf(" o "); i++; } printf("\n"); i=1; while(i<=m){ printf(" "); i++; } i=1; while(i<=n){ printf("<H> "); i++; } printf("\n"); i=1; while(i<=m){ printf(" "); i++; } i=1; while(i<=n){ printf("I I "); i++; } printf("\n"); line++; } return 0; }
2.

实验总结.
1.我在实践中深刻了解了各格式控制符的作用;学会了:getchar()和putchar()用于单个字符的输入.输出。
2.我感受到C语言好难好深奥。
3.尚存的问题:对于“打印字符小人阵列”等复杂问题,我还未掌握透彻,需要不断去学习。
浙公网安备 33010602011771号