3月26号是二级C的考试,而且通过毕设 发现自己c语言细节欠缺太多,所以呢 趁考试之前这几天,打算把前些天书市上买的一本“C语言程序设计”看完。
主要目的是查漏补缺,熟悉细节吧。
这书不是谭老那本,是科学出版社的。下午兴致冲冲看完一章 写完一章的习题以后,发现网上居然没有答案……
本来不想看了,不过转念一想 反正只为复习 只为出结果,没有答案正好每道题到自己写呗。
一:
选择有个题问叙述错误的是:B.c语言关键字必须小写 D.c语言标识符必须小写
查了一下:所谓关键字只有32个,又叫保留字,都是库里定义好的 显然只有小写
- 由ANSI标准定义的C语言关键字共32个
-
1 数据类型关键字(12个):
-
(1) char :声明字符型变量或函数
-
(2) double :声明双精度变量或函数
-
(3) enum :声明枚举类型
-
(4) float:声明浮点型变量或函数
-
(5) int: 声明整型变量或函数
-
(6) long :声明长整型变量或函数
-
(7) short :声明短整型变量或函数
-
(8) signed:声明有符号类型变量或函数
-
(9) struct:声明结构体变量或函数
-
(10) union:声明联合数据类型
-
(11) unsigned:声明无符号类型变量或函数
-
(12) void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
-
各种类型在内存中占的字节数有变化,如《c程序设计》第二版上说int 型占16比特数,但对于一个32位机来说,int型已经占32比特数了。
-
(2)控制语句关键字(12个):
-
A循环语句
-
(1) for:一种循环语句(可意会不可言传)
-
(2) do :循环语句的循环体
-
(3) while :循环语句的循环条件
-
(4) break:跳出当前循环
-
(5) continue:结束当前循环,开始下一轮循环
-
B条件语句
-
(1)if: 条件语句
-
(2)else :条件语句否定分支(与 if 连用)
-
(3)goto:无条件跳转语句
-
C开关语句
-
(1)switch :用于开关语句
-
(2)case:开关语句分支
-
(3)default:开关语句中的“其他”分支
-
D
-
return :子程序返回语句(可以带参数,也看不带参数)
-
3 存储类型关键字(4个)
-
(1)auto :声明自动变量 一般不使用
-
(2)extern:声明变量是在其他文件正声明(也可以看做是引用变量)
-
(3)register:声明积存器变量
-
(4)static :声明静态变量
-
4 其它关键字(4个):
-
(1)const :声明只读变量
-
(2)sizeof:计算数据类型长度
-
(3)typedef:用以给数据类型取别名(当然还有其他作用
-
(4)volatile:说明变量在程序执行中可被隐含地改变
所谓标识符是指常量、变量、语句标号以及用户自定义函数的名称。 Turbo C
2.0标识符的定义十分灵活。作为标识符必须满足以下规则:
1. 所有标识符必须由一个字母(a~z, A~Z)或(_)开头;
2. 标识符的其它部分可以用字母、下划线或数字(0~9)组成;
3. 大小写字母表示不同意义, 即代表不同的标识符;
4. 标识符只有前32个字符有效;
5. 标识符不能使用Turbo C2.0的关键字。
二:程序题:
第一道是输出:一圈星号 里边是welcome world,这个略了吧
第二道是输入3个数,将最小的输出
- #include <stdio.h>
-
-
int min(int x,int y,int z)
-
{
-
int temp,temp1;
-
if (x>y) temp=y;
-
else temp=x;
-
-
if (temp>z) temp1=z;
-
else temp1=temp;
-
-
return temp1;
-
}
-
-
void main()
-
{
-
int a,b,c,res;
-
printf("input 3 numbers\n");
-
scanf("%d,%d,%d",&a,&b,&c);
-
res=min(a,b,c);
-
printf("res=%d",res);
-
-
}
写程序时 犯的错误:
1)main()的类型最初我没写,VC++强制要求成void,确实void严谨
2)else拼错了一次 编译出错才看出来……
3)scanf()地址符中间 有个逗号不小心按成句号了
继续下一章吧,这样多写几个程序没坏处,到写不出来了 再去翻谭老的书 更是一种收获
阅读(2973) | 评论(3) | 转发(0) |