作业——实验二

Part 1:格式化输出函数printf()和格式化输入函数scanf()

          1.在c程序开发环境下输入并运行程序ex2_1.c,运行程序,观察运行结果。

%d的含义是:按十进制整数输出。如实验中:int y=3, z=4;printf ("%d,%d\n",y,z); ,其结果为3 4。

%f的含义是:按浮点数输出。如实验中:float f=123.456;printf ("%f\n",f); ,其结果为123.456001。

%c的含义是:按字符输出。如实验中:char ch ='a';printf("%3c\n",ch); , 其结果为a。

%e的含义是:按指数形式输出。例如:double a=123.456;printf ("%e\n",a);其结果为1.234560e+002。

%s 的含义是:按字符串输出。如实验中给:char a[]="hello,world!";printf ("%s\n",a); ,其结果为hello,world!

%5d表示整型宽度至少为5位,右对齐。

%lf表示以double型格式输出或输入变量的值,例如实验中第五个输出函数与其结果。

%.3f表示保留3位小数。

%6.2f表示整形宽度为6位,保留小数点后两位。例如实验中第四个输出结果,%8.1f结果是空位4位123.4,其整形宽度包括小数点为8位,保留小数点后一位。

输入时double型必须用%lf,float型用%f;而输出时float用%f,double两者都可以。

         2.在c程序开发环境下输入程序ex2_2.c,查找并修改错误

修改代码如下

/* 
C语言程序设计教程学习指导》p119 实验内容(2)  
这是一个格式化输入输出函数及格式符使用练习
找出两处错误,修改并运行程序 
为a1,a2,a3,c1,c2,c3,x,y输入数据,使得:
a1=1,a2=2,a3=3,c1='a',c2='b',c3='c', x=1.5, y=2.5 
*/ 
#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("%lf,%lf\n",x,y);
	return 0;
} 

  运行结果如下

Part 4: switch语句体验练习 

编程示例 输入1,2,3...的不同整数,显示不同信息 运行程序,结合运行结果,观察并尝试理解程序中多分支 if语句的使用。 代码:switch.c(if3.c用switch语句的重新实现)

有break情况:

代码如下:

/*switch语句使用示例,输入1,2,3...的不同整数,显示不同提示信息  */
#include <stdio.h>
int main() {
    int level;
    printf("输入现在状态等级(1-5):  ");
    scanf("%d",&level);
    switch(level) {
        case 1: printf("high翻了:)\n");break;
        case 2: printf("low爆了:(\n");break;
        default: printf("一言难尽,无法概括。。。\n");
    }
    return 0;
} 

运行结果如下:

无break情况:

代码如下:

/*switch语句使用示例,输入1,2,3...的不同整数,显示不同提示信息  */
#include <stdio.h>
int main() {
    int level;
    printf("输入现在状态等级(1-5):  ");
    scanf("%d",&level);
    switch(level) {
        case 1: printf("high翻了:)\n");
        case 2: printf("low爆了:(\n");
        default: printf("一言难尽,无法概括。。。\n");
    }
    return 0;
} 

运行结果如下:

Part5: 简单编程练习 编程模拟用户做选择题的情况:要求用户从键盘输入一个答案选项(A,B,C,D之一),如果用户答案是'A',则输 出提示信息"Binggo, you are right~",否则,输出提示信息"try again~"

代码如下:

/*要求用户从键盘输入一个答案选项(A,B,C,D之一),如果用户答案是'A',则输 出提示信息"Binggo, you are right~",否则,输出提示信息"try again~" */
#include <stdio.h>
int main() {
    int answer;
    printf(" 输入一个答案选项(A,B,C,D之一): ");
    scanf("%c",&answer);
    switch(answer) {
        case'A': printf("Binggo, you are right~\n");break; 
        default: printf("try again~\n");
    }
    return 0;
} 

运行结果如下:

实验总结与体会:

1.在格式化输入/输出函数、格式符使用过程中注意符号的代表意义,并且一些细节上的差异,以及什么情况下运用什么格式符等,都要熟练掌握,要不然就是会弄混淆,并且查不出错误。

2.在Part3中运行If语句用法基本理解并掌握。

3.switch语句用法基本理解,但离掌握还是有些距离。

3.在简单编程联系中,注意输入的是字符,并且在输出时A记得加上‘’,要不然会出现错误。

评论三位同学的地址:

https://www.cnblogs.com/xh66/p/10616899.html

https://www.cnblogs.com/QYAS/p/10617792.html

https://www.cnblogs.com/ssyxs/p/10601509.html

猜你喜欢

转载自www.cnblogs.com/ls4computer/p/10618383.html