-
这样代码就完善了,比较喜欢查看全部
-
while循环语句是开始循环前首先会判断条件表达式的值是否为假,如果为假的话循环代码块就不会执行;do-while循环语句是先执行循环代码块再判断循环条件,所以至少执行一次;通常在已经知道循环次数的情况下当然是for循环语句。查看全部
-
整数是%d
有小数是%f
单个字符是%c
多个字符是%s
查看全部 -
3+4%7/3+3*4-4
3+4/3+12-4
3+1+12-4
查看全部 -
1-2 int main()
2-1 C 语言规定,标识符可以是字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。
长度最好不要超过8位,因为在某些版本的C中规定标识符前8位有效,当两个标识符前8位相同时,则被认为是同一个标识符。
2-4



2-7 符号常量与直接常量
2-9 强制类型转换
强制类型转换是通过定义类型转换运算来实现的。其一般形式为:
(数据类型) (表达式)
其作用是把表达式的运算结果强制转换成类型说明符所表示的类型,例如:
输入结果:
在使用强制转换时应注意以下问题:
1、数据类型和表达式都必须加括号,如把(int)(x/2+y)写成(int)x/2+y则成了把x转换成int型之后再除2再与y相加了。
2、转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换。
3、强制转换后的运算结果不遵循四舍五入原则。
3-9 三目运算符 ?'':''
3-10 运算符之优先级比较

易混淆重点 ++i与i++
#include <stdio.h>intmain(){inti=1;printf("%d",i++);//输出1return0;}intmain(){inti=1;printf("%d",++i);//输出2return0;}intmain(){inti=1;i++;//或者++iprintf("%d",i);//输出都为2,因为在程序走完上一行后i的值都变为2return0;}4-7 循环结构之do-while循环
使用do-while结构语句时,while括号后必须有分号。
4-10 循环结构之三种循环比较
使用循环计算1-2+3-4+5-6+…-100的值?
#include <stdio.h>
int main()
{
/* 小伙伴们:
选择你们认为最合理的循环结构完成功能吧 */
int sum = 0; //定义计算结果变量sum
int i = 1; //定义循环数字变量i
int flag = 1; //定义符号状态变量flag
for(i=1;i<=100;i++)
{
sum+=i*flag;
flag*=-1;
}
printf("sum=%d\n",sum);
return 0;
}
4-18
continue只能用在循环体内,而break不同。
4-19 goto语句


5-4 形参与实参
形参是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数,
实参是在调用时传递该函数的参数。
5-5 函数的返回值
函数的返回值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。
函数值的类型和函数定义中函数的类型应保持一致。如果两者不一致,则以函数返回类型为准,自动进行类型转换。
就如小刚说选A,那么就返回一个字符型数据,用代码表示就是:
小刚说值为100,那么就返回一个整型数据,用代码表示就是:
3. 没有返回值的函数,返回类型为void。如果小刚算了一会没有返回结果的话,那么用代码表示就是:
注意:void函数中可以有执行代码块,但是不能有返回值,另void函数中如果有return语句,该语句只能起到结束函数运行的功能。其格式为:return;
5-7 递归函数(一)
例1:
计算n的阶乘可以使用以下代码:
例2:
小明为了学好英语,需要每天记单词,第一天记1个,第二天记2个依次类推,到第10天的时候小明一共记了多少个单词?
请用代码完成,算出小明第10天开始的时候会了多少个单词?
第10行根据注释提示,填写代码
#include <stdio.h>
/* 定义获取单词数量的函数 */
int getWordNumber(int n)
{
if(n == 1)
{
return 1; //第一天只会1个单词
}
else{
return getWordNumber(n-1) +n; //到第天会的单词数量
}
}
int main()
{
int num = getWordNumber(10); //获取会了的单词数量
printf("小明第10天记了:%d个单词。\n", num);
return 0;
}6-1 数组初体验
数组是一块连续的,大小固定并且里面的数据类型一致的内存空间。
在声明数组后没有进行初始化的时候,静态(static)和外部(extern)类型的数组元素初始化元素为0,自动(auto)类型的数组的元素初始化值不确定。
6-2 数组的遍历
数组遍历时要注意以下几点:
1、最好避免出现数组越界访问,循环变量最好不要超出数组的长度,比如:
2、C语言的数组长度一经声明,长度就是固定,无法改变,并且C语言并不提供计算数组长度的方法。
由于C语言是没有检查数组长度改变或者数组越界的这个机制,可能会在编辑器中编译并通过,但是结果就不能肯定了,因此还是不要越界或者改变数组的长度。
6-4 数组作为函数参数
替换指定数组中的最大元素。要求指定整数为数组arr2中的第一个元素arr2[0]。
在代码编辑器中:
第22行填写相应代码
#include <stdio.h>
void replaceMax(int arr[],int value)
{
int max = arr[0];
int index = 0;
int i;
for(i=1;i<5;i++)
{
if(arr[i]>max)
{
max=arr[i] ; //将数组中较大的数赋值给max
index = i; //记录当前索引
}
}
arr[index] = value;
}int main()
{
int arr1[] = {10,41,3,12,22};
int arr2[] = {1,2,3,4,5};
int i;
replaceMax(arr1, arr2[0] ); //将数组arr1和数组arr2的第一个元素传入函数中
for(i=0;i<5;i++)
{
printf("%d ",arr1[i]);
}
return 0;
}运行结果为
6-9 多维数组
多维数组初始化要注意以下事项:
1、采用第一种始化时数组声明必须指定列的维数。因为系统会根据数组中元素的总个数来分配空间,当知道元素总个数以及列的维数后,会直接计算出行的维数;
2、采用第二种初始化时数组声明必须同时指定行和列的维数。
查看全部 -
要用getGirth(a,b,c)而不用cirf,因为cirf是getGirth函数里的变量。查看全部 -
1.头文件,作用是让编译器执行预处理命令 #include<stdio.h> 其中.h表示文件扩展名,stdio指standard buffered i/o 带缓冲的标准输入输出 一般用到printf,scanf,gets,puts等函数时,需要包含这个头文件。 2.<>和""的区别 #include"stdio.h " 当要调用某个函数时先在用户自已编写的文件中查找,如果找不到再到库文件找. #include<stdio.h> 是直接到库文件里去找 所以如果调用自己写的函数就用#include"stdio.h "这种形式, 而调用标准库函数的话就用#include<stdio.h> 这种形式,可以提高速度!查看全部
-
好难 啊啊啊啊啊啊啊
查看全部 -
原式=3+4%(3+4)/3+3*4-4
=3+4/3+12-4
=3+1+8
=12
4/3=1是因为int所以取整 4%7除不了,4比7小,直接取4
查看全部 -
i是行,j是空格,k是* i=1时,首先j循环4次空格,跳出j内循环,然后k循环1次*, 跳出k内循环,再执行i外循环 i=2时,首先j循环3次空格,跳出j内循环,然后k循环3次*, 跳出k内循环,再执行i外循环 i=3时,首先j循环2次空格,跳出j内循环,然后k循环5次*, 跳出k内循环,再执行i外循环 i=4时,首先j循环1次空格,跳出j内循环,然后k循环7次*, 跳出k内循环,再执行i外循环 i=5 不符合i<5条件,循环结束
查看全部 -
利用+=比较直观。
查看全部 -
学习不易,坚持太难。
希望我与现在还奋斗在慕课网上的小伙伴们能够把这条路坚定的走下去,走穿 坚持始终。
c语言入门级 get
end.
查看全部 -
A选项第一个字符为符号 标识符不能为符号
B选项为c语言关键字
C选项正确 F为大写并非关键字
D选项首字符为数字 不符合标识符规则
查看全部 -
判断闰年的规则是能被4整除并且不能被100整除,或者能被400整除的年份是闰年,否则是平年。
if(year%4==0&&year%100!=0||year%400==0)
查看全部 -
C语言是除了汇编和机器语言最接近底层的语言,上 可以教会你怎么使用诸如python,JavaScript那样实用又好学的脚本语言,因为你熟悉了编程了思想。下 可以让你了解一些计算机的组成原理,如寄存器,内存,让你写出效率更好的代码。 从实际编程的角度总结一下这一节: 1. auto 可以不写,是默认值,变量的内存自动提取,自动释放 2. static 变量的内存始终存在,占用空间大 3. register 进一步提高效率,但是只有(1)形参 (2)局部自动变量才可以 4. extern 调用在代码段后定义的变量,如果之前定义好了,直接拿来用就可以,没必要用extern查看全部
举报







