第四章 简单C程序设计作业

合集下载

(完整word版)第四章_最简单的C程序设计

(完整word版)第四章_最简单的C程序设计

第四章最简单的C程序设计一、填空题1。

putchar ( )函数可以向终端输出一个【】(A)整型变量或表达式的值(B)实型变量的值(C)字符串(D)字符或字符型变量值2.以下说法正确的是【】(A)输入项可以为一个实型常量,如scanf (“%f”,3.5);(B)只有格式控制,无输入项,也能进行正确输入,如scanf (“a=%d,b=%d”);(C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如 scanf (“%4。

2f",&f);(D)当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);3。

printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列.如果字符串长度大于5,则输出按方式【1】;如果字符串长度小于5,则输出按方式【2】。

A)从左起输出该字符串,右补空格 B)按原字符串长从左向右全部输出C)右对齐输出该字符串,左补空格 D)输出错误信息4.设float x,y;则不合法的赋值语句是【】(A)++x;(B)y=(x%2)/10;(C)x*=y+8; (D)x=y=0;5.设char ch;则不合法的赋值语句是【】(A)ch=‘a+b’;(B)ch=‘\0’;(C)ch=‘a’+‘b’; (D)ch=7+9;6.以下能正确地定义整型变量a,b,c,并给它们都赋值5的语句是【】(A)int a=b=c=5;(B)int a,b,c=5;(C)int a=5,b=5,c=5;(D)a=b=c=5;7.已有定义int a=-2;和输出语句:printf(”%8lx”,a);以下正确的叙述是。

A)整型变量的输出格式符只有%d一种B)%x是格式符的一种,它可以适用于任何一种类型的数据C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度8。

以下C程序正确的运行结果是。

main(){ long y=-43456;printf (”y=%-8ld\n”,y);printf ("y=%-08ld\n”,y);printf ("y=%08ld\n",y);printf ("y=%+8ld\n”,y);}A)y=□□—43456 B)y=—43456y=—□□43456 y=-43456y=—0043456 y=—0043456y=—43456 y=+□-43456C)y=-43456 D)y=□□-43456y=-43456 y=—0043456y=-0043456 y=00043456y=□□—43456 y=+434568。

《C语言程序设计》第4章习题答案

《C语言程序设计》第4章习题答案

1、选择题(1)C(2)D(3)B(4)D(5)C(6)B(7)B(8)C(9)A(10)C(11)C(12)B 2、填空题(1)①int men[10] ;②float step[4]={1.9,-2.33,0,20.6};③_int grid[4][10] ;(2)①int m[10]={9,4,7,49,32,-5};②0 9③scanf("%d",m[1]);④m[0] =39;⑤m[0] =a[3]+a[5];(3)①3 ②5 ③8 ④8 ⑤9 ⑥12 ⑦9(4)①int a[10]={9,4,12,8,2,10,7,5,1,3}; ②0 9 ③8 8(5)103、程序填空题(1)array[20]20&array[i ]20max=array[i];min=array[i];sum+array[i];sum/20(2)-5.77000021(3)ABCDEFGHIJKLEFGHIJKLABFDEFGHIJKLABFDEFGHI4、程序设计题(1)#define SIZE 100#include<stdio.h>void main(){int a[SIZE+1],i,j;for(i=2;i<=100;i++)a[i]=i;for(i=2;i<=100;i++)for(j=i+1;j<=100;j++)if(a[i]!=0&&a[j]%a[i]==0)a[j]=0;printf("\n");j=0;for(i=2;i<=100;i++){if(a[i]!=0){printf("%-4d",a[i]);j++;}if(j==10){j=0;printf("\n");}}}(2)#define S 14#include"stdio.h"void main(){int a[S][S],i,j,n;printf("please enter n:");scanf("%d",&n);for(i=1;i<=n;i++){a[i][i]=1;a[i][1]=1;}for(i=3;i<=n;i++)for(j=2;j<i;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)printf(" ");for(j=1;j<=i;j++)printf(" %3d",a[i][j]);printf("\n");}}(3)#define SIZE 80#include<stdio.h>void main(){char str1[SIZE+SIZE],str2[SIZE];int i,j;puts("Please enter 2 string:");scanf("%s",str1);scanf("%s",str2);i=0;while(str1[i]!='\0')i++;j=0;while(str2[j]!='\0'){str1[i]=str2[j];i++;j++;}str1[i]='\0';printf("%s\n",str1);}(4)#define SIZE 80#include<stdio.h>#include<string.h>void main(){char string[SIZE];int len,i,j,flag;long number;puts("Please enter a digital string:");scanf("%s",string);len=strlen(string);if(string[0]=='-'){flag=-1;i=1;}else{flag=1;i=0;}number=string[i]-'0';for(i++;i<len;i++)number=number*10+(string[i]-'0');number=flag*number;printf("%d\n",number);}(5)#define SIZE 40#include<stdio.h>void main(){int m,n,i,j;float price[SIZE],sum;printf("\nPlease input M and N:");scanf("%d%d",&m,&n);m=m-n;printf("Please input %d price :",n);sum=0;for(i=0;i<n;i++){scanf("%f",&price[i]);sum=sum+price[i];}printf("Aver are %10.2f.",sum/n);while(m>0){for(i=0;i<n-1;i++)price[i]=price[i+1];printf("\nPlease input one price:"); scanf("%f",&price[n-1]);m--;sum=0;for(i=0;i<n;i++){sum=sum+price[i];}printf("Aber are %10.2f",sum/n);}}。

《C语言程序设计》教材习题答案第4章

《C语言程序设计》教材习题答案第4章
scanf("%d",&n);
if(++n<10) printf("%d\n",n);
else printf("%d\n",--n);
}
3、若a、b、c1、c2、x、y均是整形变量,正确的switch语句是D
switch(a-b)
{default:y=a*b;break;
case 3:
case 10:y=a-b;break;
{
day+=a[ai][i];
}
day+=d;
printf("这是该年的弟%d天\n",day);
}
7、输入一个字符,判断输入字符的种类,即区分空格、回车、数字字符、英文字母和其他字符(要求分别用if…else if和switch语句编写)。
#include<stdio.h>
void main()
{
else x=6;
else x=7;
12、有如下程序段
int a=14,b=15,x;
char c='A';
x=(a&&b)&&(c<'B');
执行该程序段后,x的值为D 1
13、有如下程序段
int score=5;
switch(score)
{
case 5:printf("very good!");
case 4:printf("Good!");
default:printf("data error!");
}
程序输出结果为D Very good! Good! Data error!

c语言程序设计第四章习题答案

c语言程序设计第四章习题答案

第四章选择结构1:实现输入一个字符的大小写字母的转换#include<stdio.h>void main(){char x='a';printf("输入x:\n");scanf("%c",&x);if( x>='A' && x<='Z'){x=x+32; /*是大写,转换为小写,至于为什么要+32吗,请看看大小写字母的ASCII码差值*/}elseif( x>='a' && x<='z'){x=x-32; /*是小写,转换为大写*/}/*其它不用理*/printf("%c\n",x);}2:输入一个大写字母实现,输出字母表中的前后字母,但是当时A 或是Z时提示输出的“没有前面的字母”,“没有后面的字母”#include<stdio.h>void main(){char x;printf("输入一个大写字母x:\n");scanf("%c",&x);if (x=='A'){printf("没有前面的字母");}if( x=='Z'){ printf("没有后面的字母");}else// (x>'A'||x<'Z'){printf("%c, %c",x-1,x+1);}}3:实现的是对百分制的评等级#include<stdio.h>void main(){float x;printf("请输入学生的成绩x的值\n");scanf("%f",&x);if(x>=90&&x<=100){printf("等级为A ");}else{if (x>=80&&x>=89){printf("等级为B ");}elseif (x>=70&&x<=79){printf("等级为C ");}elseif (x>=60&&x<=69){printf("等级为D ");}else{printf("等级为E ");}}}4:知道今天的日期,年月日,求出明天的年月日#include <stdio.h>int main(){int year,month,day;int maxdays[]={31,28,31,30,31,30,31,31,30,31,30,31};printf("请输入年月日,中间用空格隔开!\n");scanf("%d %d %d",&year,&month,&day);if(year%400==0 || (year%4==0 && year%100!=0)) maxdays[1]=29;//闰年二月最大值是29if(month>12 || month<1){printf("日期不合法!\n");return 0;}if(day>maxdays[month-1]){printf("日期不合法!\n");return 0;}day++;if(day>maxdays[month-1]){day=1;month++;if(month>12){month=1;year++;}}printf("明天的日期是:%d-%d-%d\n",year,month,day);return 0;}5:输入三角形的三条边的长度,判断能否构成三角形,并且判断三角形的形状。

C语言程序设计各章练习题

C语言程序设计各章练习题

C语言程序设计各章练习题《C 语言程序设计》各章练习题2016年12月汇编第1-3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a,b 的值,然后交换a,b 的值。

要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a,b 的值。

附加要求:(1)允许定义第3个变量,实现交换;(2)不允许定义第3个变量,实现交换。

第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎪⎩⎪⎪⎨⎧>=<+-=0020212x x x x x y编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎩⎪⎨⎧>≤≤--<=002222x x x x x y编程题3:求 ax 2+bx+c=0方程的解。

(只输出b 2-4ac>=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。

要求提示键盘输入n ,如n 为负数,不予计算,直接返回。

编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。

编程题6:从键盘输入一个数n ,判断n 是否是素数。

编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。

编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。

编程题8:求满足下列条件的三位数n ,它除以11(整数相除)所得到的商等于n 的各位数字的平方和,且其中至少有二位数字相同的数。

编程题9:有一些十进制整数对ab 和cd 具有如下特性:ab×cd=ba×dc,其中a≠b 且c≠d。

如:12×42=21×24。

请编程找出30~50之间满数,将100~200之间的素数全部输出,要求屏幕上每个数占4位,每行显示5个素数,左对齐。

C语言第四章选择结构程序设计作业-雨课堂

C语言第四章选择结构程序设计作业-雨课堂

单选题 3分
18.若变量已正确定义并赋值,以 下符合C语言语法的表达式是( )
A a:=b+1 B a=b=c+2 C int 18.5%3 D a=a+7=c+b
单选题 3分 19.若有条件表达式 (exp) ?a++:b--,则以下表达式 中能完全等价于表达式(exp) 的是( )
A (exp==0)
单选题 3分
2.下列运算符中优先级最高 的是( )
A< B+
& C& D !=
单选题 3分
3.能正确表示“当x的取值在 [1,10]和[200,210]范围内为真, 否则为假"的表达式是( )
A
(x>=1)&&(x<=10)&&(x >=200)&&(x<=210)
B
(x>=1)||(x<=10)||(x>=2 00)||(x<=210)
单选题 3分
5.下列运算符中优先级最低 的是( )
A ?: &
B& C+ D !=
单选题 3分
6.以下程序的运行结果是( ) #include<stdio.h> main() {int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b);}
正常使用主观题需2.0以上版本雨课堂
主观题 10分 24.程序设计题 编一个程序,输入3个整数, 按从大到小的顺序输出。 要求拍照或截图提交(1)算 法(2)编写的程序(3)程序 运行结果答案
正常使用主观题需2.0以上版本雨课堂

C语言简明教程第04章最简单C程序设计

C语言简明教程第04章最简单C程序设计

getchar函数 功能:从标准输入设备上(键盘)输入一个且只
能是一个字符,并将该字符返回为函数的值。
格式:getchar();
没有参数 例:
#include <stdio.h>
注意:
main()
(1)只有在按“回车”键之后输入的字
{
符才有效.
int i;
(2)此函数只接受一个字符,而非一
i=getchar(); printf(“%c:%d\n”,i,i);
格式字符


l
用于长整型,可加在格式符d、o、x、u前面
%lf将修正为double型
h
将整型格式d、o、x、u修正为short型
m(正整数) 数据最小宽度
n(正整数) 对实数表示输出n位小数;对字串表示截取的字符个数
-
输出的数字或字符在域内向左靠
0
用“0”来填充数字前面的空位
长度修饰符:l(长),h(短),放在(1)格式字符前面。 域宽和精度描述符:m(域宽).n(精度),放在长度修饰符的前面。
格式控制符:规定 数据的输入格式, 必须由“ ”括起来 ,其内容包括格式 说明(修饰符)和 格式符两部分。
地址列表:由一个或多个 变量的地址组成,变量地 址之间以“,”分隔。也 可以是字符串的首地址。
在C语言中一个变量的地址 可以通过&地址运算符得到。 例如:int a,b;
则a,b的地址为&a,&b。
❖ 4.空语句。下面是一个空语句: ;
即只有一个分号的语句,它什么也不做。有时用来作被转向点,或 循环语句中的循环体(循环体是空语句,表示循环体什么也不做)。
❖ 5.可以用{ }把一些语句括起来成为复合语句,如下面是一个复合 语句。 {z=x+y; t=Z/100; printf(”%f”,t); }

第4章 最简单的C程序设计

第4章 最简单的C程序设计

第4章最简单的C程序设计本章主要任务:了解C语言语句分类:控制语句,表达式语句,复合语句。

掌握表达式语句,复合语句的构成。

掌握格式化输入/输出函数,常用其它输入/输出函数的使用。

4.1 C语句概述4.2 输入/输出及C语言的实现4.3 顺序结构程序设计举例4.1 C语句概述C语言的语句用来向计算机系统发出操作指令。

一个语句经编译后产生若干条机器指令。

一个实际的程序应当包含若干语句。

C程序结构:一个C程序可以由若干个源程序文件组成,一个源文件可以由若干个函数和预处理命令以及全局变量声明部分组成,一个函数由数据定义部分(声明部分)和执行语句组成。

应当指出,声明部分的内容不应称为语句。

C程序的组成C语句可以分为以下3大类:(1)控制语句(2)表达式语句表达式语句是在表达式最后加上一个“;”组成。

例如:c程序中大多数语句是表达式语句(包括函数调用语句),所以有人把c语言称作“表达式语言”。

(3)复合语句用{}把一些语句(语句序列,表示一系列工作)括起来成为复合语句,又称语句块、分程序。

一般情况凡是允许出现语句的地方都允许使用复合语句。

在程序结构上复合语句被看作一个整体的语句,但是内部可能完成了一系列工作。

如:{z=x+y;t=z/100;printf("%f",t);}4.2 输入/输出及C 语言的实现(1) 计算机的组成CPU 内存I/O 接口硬盘软驱显示器键盘鼠标打印机主机外围设备(2) 输入/输出:从计算机向外部设备(如显示器、打印机、磁盘等)输出数据称为“输出”,从外部设备(如键盘、鼠标、扫描仪、光盘、磁盘)向计算机输入数据称为“输入”。

(3) C语言本身不提供输入/输出语句,输入/输出操作由函数实现。

在C标准函数库中提供了一些输入/输出函数,如printf函数,scanf函数。

C函数库中有一批“标准输入/输出函数”,它是以标准的输入/输出设备(一般为终端)为输入/输出对象的。

C语言程序设计课堂练习题4-6

C语言程序设计课堂练习题4-6

C语言程序设计课堂练习题(2012-12-26)第4章基本程序设计技术一、选择题1.若有以下程序:main(){ int x=1,a=0;do{a+=1;}while(x,x--);}则语句a+=1;执行的次数是()A. 0B. 1C. 无限次D. 2答案:2.若有以下程序:main(){ int i;f or(i=0;i<3;i++)switch(i){case 1:printf("%d",i);case 2:printf("%d",i);def ault:print f("%d",i);}}执行后输出结果是( )A.011122B. 012C. 012020D.120答案:3.以下程序的输出结果是:main(){ int a=0,i;f or(i=1;i<5;i++){ switch(i){ case 0:case 3:a+=2;case 1:case 2:a+=3;def ault:a+=5;}}printf("%d\n",a)}A. 31B.13C. 10D.20答案:4.若输入字符串:abcde<回车>,则以下while循环体将执行( ) main(){ char ch;while((ch=getchar())!='e')printf("*");}A. 2B. 3C. 无限次D.4答案:5.有以下程序段:int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是( ).A. p的值不等于12345并且n的值小于3B. p的值等于12345并且n的值大于等于3C. p的值不等于12345或者n的值小于3D. p的值等于12345或者n的值大于等于3 答案:6.以下程序的输出结果是( )main(){int i=0,a=0;while(i<20){ f or(;;){if((i%10)==0) break;else i--;}i+=11;a+=i;}printf("%d\n",a);}A. 21B. 32C. 33D.11答案:7.以下程序的输出结果是( )main(){ int a,b;f or(a=1,b=1;a<=100;a++){if(b>=10) break;if(b%3==1){b+=3;continue;}}printf("%d\n",a);}A. 101B. 6C. 5D.4答案:8.若有以下程序:main(){ int a=15,b=21,m=0;switch(a%3){case 0:m++;break;case 1:m++;switch(b%2){def ault:m++;case 0:m++;break;}}printf("%d\n",m);}执行后输出的结果是( )A. 1B. 2C. 3D.4答案:二、编程题1.编写程序实现一个专家诊断系统。

第 4 单元 最简单的C程序设计 ——顺序程序设计

第 4 单元 最简单的C程序设计 ——顺序程序设计

4单元最简单的C程序设计——顺序程序设计学习要求掌握赋值语句掌握标准输入输出函数–熟练运用putchar、getchar–熟练运用scanf、printf–了解puts、gets掌握格式控制掌握顺序结构程序设计C程序结构C程序源程序文件1源程序文件2源程序文件n 预编译命令函数1函数n说明部分执行部分(语句)C语句概述一个实际的程序包含若干语句一个语句经过编译产生若干条机器指令C语句都是用来完成一定操作的注意,函数体的声明部分不是一条语句,–如int c;函数体的执行部分由语句组成C语句分类控制语句:9种函数调用语句:由函数调用加分号构成表达式语句:由表达式加分号构成空语句:只有一个分号的语句复合语句:用{ }将一些语句括起来例4-1赋值语句回顾:赋值表达式–变量=表达式–运算符=的左边必须是变量名•a=b与b=a是不同的、x=2正确,而2=x错误–赋值表达式可以出现在其他表达式中•if ((a=b)>0) t=1; else t=-1;赋值语句由赋值表达式加上一个分号组成–a=b 是表达式–a=b; 是语句if ((a=b;)>0) t=1; ×例4-2数据的输入输出C语言无I/O语句,I/O操作由函数实现标准输入输出函数–scanf(格式输入)、printf(格式输出)–getchar(输入字符)、putchar(输出字符)–gets(输入字符串)、puts(输出字符串)在stdio.h文件中包含了与标准I/O有关的变量定义和宏定义,在调用标准输入输出库函数时,程序开头包含预编译命令–# include <stdio.h>–# include "stdio.h"字符数据的输入输出putchar 函数,向终端输出一个字符getchar 函数,从终端输入一个字符例4-3# include <stdio.h>void main(){char c;c=getchar();putchar(c);}格式输入和输出printf函数,向终端按格式输出若干任意类型数据scanf函数,从终端按格式输入若干数据printf函数格式:printf(格式控制,输出表列)例如:#include <stdio.h>void main() {格式说明输出列表int x=65;printf("按整型输出x是%d,按字符输出x是%c\n",x,x);}普通字符printf函数格式控制是用双引号括起来的字符串,又称为转换控制字符串。

最简单的C程序设计-顺序程序设计 习题四及参考答案

最简单的C程序设计-顺序程序设计 习题四及参考答案

第四章习题参考答案一、单项选择题(P90)1、putchar()函数可以向屏幕输出一个()A)整形变量值 B)实型变量值 C)字符D)字符或字符变量值2、以下选项中不是C语句的是()。

A){int i;i++;printf("%d\n",i);} B);C)a=5,c=10 D){;}3、以下合法的C语句是()。

A){a=b}; B)k=int(a+b); C)k=a+b=c; D)—i;4、执行以下程序段后,c3的值是()。

int c1=1,c2=2,c3;c3=c1/c2;A)0 B)1/2 C)0.5 D)15、若int a,b,c;则为它们输入数据的正确的语句是( )。

A)read(a,b,c); B)scanf("%d%d%d",a,b,c);C)scanf("%D%D%D",&a,&b,&c); D)scanf("%d%d%d",&a,&b,&c);6、若float a,b,c; 要通过语句:scanf("%f %f %f",&a,&b,&c); 分别为a,b,c输入10,22,23。

以下不正确的输入形式是()。

A)10 B)10.0,22.0,33.0 C)10.0 D)10 2222 22.0 33.0 33337、若在键盘上输入:283.1900,想使单精度实型变量c的值为283.19,则正确的输入语句是()。

A)scanf("%f",&c); B)scanf("8.4f",&c);C)scanf("%6.2f",&c); D)scanf("8f",&c);8、执行语句:printf("|%10.5f|\n"12345.678;的输出是()。

第04章最简单C程序设计

第04章最简单C程序设计

图4.1
3.C语句的种类:
1) 控制语句
—-----完成一定的控制功能。
C只有9种控制语句:
① if()~else~ (条件语句)
② for()~
(循环语句)
③ while() (循环语句)
⑤ continue (结束本次循环语句)
⑥ break ⑦ switch ⑧ goto ⑨ return
例4.1 输出单个字符。 #include <stduio.h> main() { char a,b,c; a='b';b='o';c='y'; putchar(a);putchar(b);putchar(c); }
运行结果: boy
NOTE: 1) 可输出控制字符。 如putchar(‘\n’)输出一个换行符,使输出的当前位置移到下一行的开头。
4) 空语句。
例 如:

即只有一个分号的语句,它什么也不做。
用 途: (1)用来做被转向点; (2)循环语句中的循环体(循环体是空语句,表示循环体什么也 不做)。
5)复合语句/分程序 构 成:用 {}把一些语句括起来成为复合语句/分程序。 例 如: {z=x+y; t=z/100; printf("%f",t); }
NOTE: (1) 复合语句中最后一个语句中最后的分号不能忽略不写(这是和pascal不同的)。 (2) C语言允许一行写几个语句,也允许一个语句拆开写在几行上,书写格式
无固定要求。
4.2 赋值语句
定 义: 赋值语句是由赋值表达式加上一个分号构成。
NOTE: 1) C语言中的赋值号“=”是一个运算符,在其他大多数语言中赋 值号不是运算符。 2) 其他多数高级语言没有“赋值表达式”一概念。

C语言程序设计-第四章 最简单的C程序设计

C语言程序设计-第四章 最简单的C程序设计

a=3, b=4 说明 格式字符要用小写 格式字符与输出项个数应相同, 格式字符与输出项个数应相同,按先后顺序一一对应 输出转换:格式字符与输出项类型不一致 格式字符与输出项类型不一致,自动按指定格 输出转换 格式字符与输出项类型不一致 自动按指定格 式输出
附加格式说明符(修饰符) 附加格式说明符(修饰符)
1、数据类型决定什么? ?
答案:数据类型决定: 1、数据的表示形式 2、数据占内存字节数 3、数据取值范围 4、其上可进行的操作
2、整型变量、字符型变量、 单精度变量在内存中各占几个字节?
答案: 整型变量占2个字节 个字节; 答案: 整型变量占 个字节; 字符型变量占1个字节; 字符型变量占 个字节; 个字节 单精度变量占4个字节。 单精度变量占 个字节。 个字节
4、符号常量是怎样定义的? 、符号常量是怎样定义的?
答案: 答案: #define
符号常量 常量
是预处理命令, 是预处理命令,叫宏定义
例如: 例如: #define
PRICE PI A
25
#define #define
3.14159 9.8
5、字符型常量是怎样定义的? 、字符型常量是怎样定义的?
C语言中任何表达式都可以加分号成为语句。 语言中任何表达式都可以加分号成为语句。 语言中任何表达式都可以加分号成为语句 i=i+1 i=i+1; i++ i++; 表达式) (表达式) 语句) (语句)
x+y;也是语句,但没有把 也是语句,但没有把x+y的和赋给一个变量 也是语句 的和赋给一个变量 , 所以无实际意义。 所以无实际意义。 4、空语句 、 ; 只有一个分号,什么也不做。 只有一个分号,什么也不做。 5、复合语句,也叫分程序。是用{ } 扩起来的。 、复合语句,也叫分程序。是用 扩起来的。 { a=a+b; printf(“%d”,a); }(一起执行,最后一行的分号不能省略 一起执行,最后一行的分号不能省略) 一起执行

《C程序设计》作业参考答案(1-4章)

《C程序设计》作业参考答案(1-4章)

第1章C语言概述习题(P13):1.3 写出一个C程序的构成。

答:C程序由一个main函数和0个或多个自定义函数构成,每个函数的构成如下:函数类型函数名(函数参数列表){说明部分执行部分}1.4 C语言以函数为程序的基本单位,有什么好处?答:一个函数实现一个相对独立的功能,便于实现程序的模块化。

1.5 请参照本章例题,编写一个C程序,输出以下信息:*************************************************Very good!*************************************************答:参照例1.1编程如下# include <stdio.h>void main(){printf("********************************************\n");printf(" Very good!\n");printf("********************************************\n");}1.6 编写一个C程序,输入a、b、c 3个值,输出其中最大者。

答:参照例1.3编程如下法一:修改例1.3的主函数,自定义max函数不变。

# include <stdio.h>void main(){int max(int x,int y); /*函数声明*/int a,b,c,m; /*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b); /*第一次调用max函数求出前两个数的最大值放在m中*/m=max(m,c); /*再调max函数求出m和第三个数的最大数*/printf("max is %d\n",m); /*输出结果*/}int max(int x,int y) /*定义求两个数的最大数的函数max */{int z;if(x>y) z=x;else z=y;return(z);}法二:修改例1.3的主函数和max函数,将max函数改为求3个数的最大数。

C程序设计(第三版)第4章_简单程序

C程序设计(第三版)第4章_简单程序

计算机科学与技术系 Department of Computer Science
12
§ 4.3
数据输入输出的概念及在C 数据输入输出的概念及在C语言中的实现
(一).所谓输入输出是以计算机主机为主体而言的
输出:从计算机向外部输出设备(显示器,打印机) 输出 输出数据 输入:从输入设备(键盘,鼠标,扫描仪)向计算机 输入 输入数据.
16
§ 4.4
字符数据的输入输出(续) 字符数据的输入输出(
例4.1 输出单个字符。 #include<stdio.h> 运行结果:B void main() O { Y char a,b,c; a=‘B’;b=‘O’;c=‘Y’; putchar(a);putchar(b);putchar(c);putchar(‘\n’); putchar(a);putchar(‘\n’);putchar(b);putchar(‘\n’);putchar(c);putchar(‘\n’); }
(5)c格式符,用来输出一个字符。 c格式符
如:char d=′a′; printf(″%c″,d); 输出字符′a′. 一个整数,只要它的值在0~255范围内,可以用 “%c”使之按字符形式输出,在输出前,系统会将该整数 作为ASCII码转换成相应的字符;一个字符数据也可以用 整数形式输出。
计算机科学与技术系 Department of Computer Science
运行程序:
从键盘输入字符‘a’ 按Enter键 屏幕上将显示输出的字符‘a’
a a
计算机科学与技术系 Department of Computer Science
19பைடு நூலகம்
§ 4.5
格式输入与输出

C程序设计教程第三版作业题解(第四章)

C程序设计教程第三版作业题解(第四章)

第四章4.1统计全单位人员的平均工资,单位人数不固定,工资数从键盘先后输入,当输入-1时表示输入结束。

//程序1 用if语句#include<stdio.h>int main(){ int n=0;float gz=0,sum=0,pj;printf("请输入职工工资(数据用空格分隔,输入-1结束输入):\n");while(gz!=-1){scanf("%f",&gz);if(gz==-1)break;sum=sum+gz;n++;}pj=sum/n;printf("平均工资是:%10.2f\n",pj);return 0;} //注意,如gz定义成double(双精度),则输入数据后要用加.0,如最后的-1要用-1.0的形式输入,否则出错。

4.2 一个单位下设三个班组,每个班组人数不固定。

需要统计每个班组的平均工资。

分别输入三个班组所有职工工资,当输入-1时,表示该班组的输入结束。

输入出班组号和该班组的平均工资#include<stdio.h>int main (){int gz,i,n;float sum,pj;for(i=1;i<=3;i++){/*外循环控制班组序号*/n=0;gz=0;sum=0;printf("请输入第%d组的职工工资(数据用空格分隔,输入-1结束输入):\n",i);while(gz!=-1){ /*内循环计算班组平均工资*/scanf("%d",&gz);if(gz==-1)break;/*判断是输入结束标识,则跳出循环,数据不累加,也不记人数*/sum=sum+gz;n++;}pj=sum/n; /*根据工资累加数和总人数求平均值*/printf("第%d组的平均工资是:%10.2f\n",i,pj);}return 0;}4.3百元买百鸡:公鸡每只值5元,母鸡每只值3元,小鸡3只值1元。

第四章 最简单的c程序设计——顺序程序设计 ( 1 )

第四章 最简单的c程序设计——顺序程序设计 ( 1 )

第四章最简单的C程序设计——顺序程序设计一单项选择题1.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式()。

A) 从左起输出该字符串,右补空格B) 按原字符长从左向右全部输出C) 右对齐输出该字串,左补空格D) 输出错误信息2.已有定义int a= -2; 和输出语句printf(“%8x”,a); 以下正确的叙述是()。

A) 整型变量的输出形式只有%d一种B) %x是格式符的一种,它可以适用于任何一种类型的数据C) %x是格式符的一种,其变量的值按十六进制输出,但%8x是错误的D) %8x不是错误的格式符,其中数字8规定了输出字段的宽度3.若x, y均定义成int型,z定义为double型,以下不合法的scanf函数调用语句是()。

A) scanf(“%d %x, %l e”, &x, &y, &z);B) scanf(“%2d *%d, %lf”, &x, &y, &z);C) scanf(“%x %*d%o”, &x, &y);D) scanf(“%x %o%6.2f”, &x, &y, &z);4.以下程序的输出结果是()。

main( ){ int k=17;printf("%d,%o,%x\n",k,k,k);}A)17,021,0x11 B)17,17,17B)17,0x11,021 D)17,21,115.下列程序的运行结果是()。

#include <stdio.h>main(){ int a=2,c=5;printf("a=%d,b=%d\n",a,c);}A) a=%2,b=%5 B) a=2,b=5C) a=d,b=d D) a=2,c=56.语句printf("a\bre\'hi\'y\\\bou\n"); 的输出结果是()。

四章节最简单C程序设计

四章节最简单C程序设计
• 功能: 将内存单元中的二进制数补码直接转换成八 进制数或十六进制数输出,不带符号位。
• 说明: – 同“%d”类似,可以用“%mo”或“% mx”指定字段输出宽度。 – 对长整型数可以用“%lo”或“%lx”格式 输出。
15
机器数(带符号)的表示
• 正数:
原码、反码及补码一样,即:符号位+绝对值
情 况
s=
6.00
33
Homework
• 本章习题5~14。 • 上述作业先思考,
后上机验证通过。
34
该函数为无参函数。 使用该函数,必须在程序开头用预编译命令:
#include <stdio.h>
27
『例4.8』getchar函数使用。
#include <stdio.h>
main()
{
char c;
printf("Input an uppercase letter:\n");
c=getchar();
4.1 C语句概述
引言: C程序结构框图
C 程序
源程序文件 1 … 源程序文件 i … 源程序文件 n
预编译命令 函数 1 … 函数 m
说明部分 执行部分(语句)
1
C语句的种类
共四类: • 控制语句:
流程控制:条件、循环 辅助控制:break、continue、goto、return、switch • 空语句:仅一个“;”构成。 • 表达式语句:一个表达式后跟一个“;”构成。 • 复合语句:用“ { } ”括起来的一些语句。
• 程序范例 20
『例4.6』s格式符使用。
main() {
printf("%3s,%7.2s,%.4s,%-5.3s\n", "China","China","China","China"); }

第4章_最简单的C程序设计3

第4章_最简单的C程序设计3

字 符 型
按指定宽度m 按指定宽度m输出 ,位数小于m的 位数小于m 右靠(左靠),大于m的按实际位数输出. 右靠(左靠),大于m的按实际位数输出. 输出 m , 。 指定输出数据 m 数 度小于m 度小于m, 数 度大于m 度大于m, 于n 于n, 左 (右 )n
%m.ns %-m.ns 实 型
%m.nf, %-m.nf %%m.ne, %-m.ne %%m.ng, %-m.ng %-
第4 章 最简单的C 最简单的C程序设计
—顺序程序设计 顺序程序设计
第4章 最简单的C程序设计 最简单的C
本章要点
C语句概述 字符输入输出 格式输入输出 顺序结构程序设计
第4章 最简单的C程序设计 最简单的C
主要内容
C语句概述 (4.1) 赋值语句 (4.2) 字符数据的输入输出 (4.4) 格式输入与输出 (4.5) 顺序结构程序设计举例 (4.6)
格式输入与输出(4.5) 格式输入与输出(4.5)
第4章 最简单的C程序设计 最简单的C
printf函数---格式字符 printf函数---格式字符
例: int a=567; printf(“%d\n”,a); printf(“%d\ int b=65; printf(“%o\n”,b); printf(“%o\ char c=65; printf(“%c\n”,c); printf(“%c\ printf(“%s\ printf(“%s\n”,“ABC”); float d=567.789; printf(“%e\n”,d); printf(“%e\ printf(“%%”); 输出结果: 567 101 A ABC 5.677890e+002 5.677890e+002 %
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章简单C程序设计
1.有如下程序,若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输
入是( ). (注:<CR>表示回车)
#include<stdio.h>
void main()
{
int a1,a2;
char c1,c2;
scanf("%d%d",&a1,&a2);
scanf("%c%c",&c1,&c2):
}
A)1020AB<CR>
B)10 20<CR>
AB<CR>
C)10 20 ABC<CR>
D)10 20AB<CR>
2.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当
从第一列开始输入数据是,正确的数据输入方式是( )。

(注:︼表示空格,<CR>表示回车)
int a1,a2;char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
A) 10A︼20B<CR> B) 10︼A︼20︼B<CR>
C) 10AB20<CR> D) 10A20︼B<CR>
3.根据定义和数据的输入方式,输入语句的正确形式为( )。

已有定义:float f1,f2;
数据的输入方式:4.52
3.5
A) scanf(“%f,%f”,&f1,&f2);
B) scanf(“%f%f”,&f1,&f2);
C) scanf(“%3.2f%2.1f”,&f1,&f2);
D) scanf(“%3.2f,%2.1f”,&f1,&f2);
4.阅读以下程序,当输入数据的形式为:25,13,10<CR>,正确的输出结果为( )。

main()
{ int x,y,z;
scanf(“%d%d%d”,&x,&y,&z);
printf(“x+y+z=%d\n”,x+y+z);
}
A) x+y+z=48
B) x+y+z=35
C) x+z=35
D) 不确定值
5.已知ch是是字符形变量,下面不正确的赋值语句是 ( ).
A) ch=’a+b’;
B) ch=’\o’;
C) ch=’7’+’9’;
D) ch=5+9;
6.设x,y均为float变量,则以下不合法的赋值语句是( )
A) ++x;
B) y=(x%2)/10;
C) x*=y+8;
D) x=y=10;
7.以下程序的执行结果是( )。

#include<stdio.h>
void main()
{
int sum,pad;
sum=pad=5;
pad=sum++;
pad++;
++pad;
printf("%d\n",pad);
}
A.7
B.6
C.5
D.4。

相关文档
最新文档