1. C语言中,数组传递问题:a函数有形参数组进行运算,在主函数中调用a函数函数,只需要把主函数中需要进行a函数的数组操作的数组名传送过去就行。如:
void a(int a[i][j])为数组操作函数,主函数要对数组b[i][j]进行函数a中的操作,只需要在主函数写上a(b)就行。
2. i++与++i的联系与区别:都可以使i加1,但是i++是先进行包含其相关的运算,再进行加一操作。++i则是先加一,在进行其相关运算。
3. 在c中进行阶层次等计算,结果很大时,需要事先用long long int来定义整数,并且输出格式为%lld。
4. 带参宏调用的一般形式为:宏名(实参列表);
例如:
#define M(y) y*y+3*y //宏定义
// Code
k=M(5); //宏调用
在宏调用时,用实参5去代替形参y,经预处理宏展开后的语句为k=5*5+3*5。
5. 定义float类型的,对应的输出格式为%f,而定义doublel类型的,对应的输出格式为%lf。注意:定义不同类型的数,其要用相应的输出格式来输出数,否则会出现输出错误的数。
6. gets(a);//sacnf("%s",a)不可以获取空格。
7. 取地址符号:&,取内容符号:*。
8. 定义指针类型的变量,要存储值时,需要先用malloc动态开辟空间给指针。如:
int *ptr = NULL;
ptr = (int*)malloc(num*sizeof(int));//开辟动态空间
最后需要用free(ptr)来释放开辟的动态空间。
9. 连续需要输入字符且需要分行输入多个字符,记住换行符也会存储到字符串中,需要用getchar()来消除换行符对存储字符串的影响。
10. 动态开辟空间的指针可以当数组来用,若想要用开辟n个int类型的空间如:
int *a;
a=(int *)malloc(n*sizeof(int));
/*向开辟空间填充数值*/
for(int i=0;i<n;i++)
a[i]=i;
11. 字符数组一开始定义没有赋值,但后面需要赋值时,需要用strcpy()函数来进行赋值。如:
char c[100];
strcpy(c,"sss");
0.0分
1 人评分
开心的金明 (C++代码)浏览:1222 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:797 |
gets函数前有scanf读取时候,会读取缓存回车导致出错!!!浏览:1148 |
点我有惊喜!你懂得!浏览:2028 |
点我有惊喜!你懂得!浏览:1166 |
简单的a+b (C语言代码)浏览:601 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:1292 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:468 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:569 |
1197求助浏览:667 |