-
这节需要记忆
查看全部 -
在使用强制转换时应注意以下问题:
1、数据类型和表达式都必须加括号,如把(int)(x/2+y)写成(int)x/2+y则成了把x转换成int型之后再除2再与y相加了。
2、转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换。
3、强制转换后的运算结果不遵循四舍五入原则。
查看全部 -
注意:格式符的个数要与变量、常量或者表达式的个数一一对应
查看全部 -
注:int、short int、long int是根据编译环境的不同,所取范围不同。
查看全部 -
C 语言规定,标识符可以是字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。在使用标识符时还有注意以下几点:
(1)标识符的长度最好不要超过8位,因为在某些版本的C中规定标识符前8位有效,当两个标识符前8位相同时,则被认为是同一个标识符。
(2)标识符是严格区分大小写的。例如Imooc和imooc 是两个不同的标识符。
(3)标识符最好选择有意义的英文单词组成做到"见名知意",不要使用中文。
查看全部 -
使用while语句应注意以下几点:
1、while语句中的表达式一般是关系表达或逻辑表达式,当表达式的值为假时不执行循环体,反之则循环体一直执行。
2、一定要记着在循环体中改变循环变量的值,否则会出现死循环(无休止的执行)。
3、循环体如果包括有一个以上的语句,则必须用{}括起来,组成复合语句。
查看全部 -
do-while循环至少要执行一次循环语句
查看全部 -
小数/大数求余=小数,大数/小数求余=余数
查看全部 -
查看全部
-
#include <stdio.h>
int sum(int a[10])
{
int i,sum1=0;
for(i=0;i<10;i++)
{
sum1+=a[i];
}
return sum1;
}
int maxscore(int a[10])
{
int max=a[0],i;
for(i=0;i<10;i++)
{
if(a[i]>max)
max=a[i];
}
return max;
}
int minscore(int a[10])
{
int min=a[0],i;
for(i=0;i<10;i++)
{
if(a[i]<min)
{
min=a[i];
}
}
return min;
}
float avers(int a[10])
{
float averages;
int i,sum;
for(i=0;i<10;i++)
{
sum+=a[i];
}
averages=sum/10;
return averages;
}
void downsort(int nums[],int n)
{
int i, j, temp;
//冒泡排序算法:进行 n-1 轮比较
for(i=0; i<n-1; i++){
//每一轮比较前 n-1-i 个,也就是说,已经排序好的最后 i 个不用比较
for(j=n-1; j>i; j--){
if(nums[j-1] > nums[j]){
temp = nums[j-1];
nums[j-1] = nums[j];
nums[j] = temp;
}
}
}
//降序输出排序后的数组
for(i=n-1; i>0; i--){
printf("%d ", nums[i]);
}
}
int main()
{
int score[10]={67,98,75,63,82,79,81,91,66,84};
printf("总分%d\n", sum(score));
printf("最高分%d\n", maxscore(score));
printf("最低分%d\n", minscore(score));
printf("平均数%.2f\n", avers(score));
downsort(score,10);
return 0;
}
查看全部 -
自动转换发生在不同数据类型运算时,在编译的时候自动完成。自动转换遵循的规则就好比小盒子可以放进大盒子里面一样,下图表示了类型自动转换的规则。
char类型数据转换为int类型数据遵循ASCII码中的对应值,ASCII码请查看WIKI。
注:字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换
查看全部 -
C 语言规定,标识符可以是字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。
查看全部 -
#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;
}
查看全部 -
记!!
查看全部 -
记住!
查看全部 -
#include <stdio.h>
/* Jone算出结果应该怎么写函数? */
int joneResult(int x, int y, int z)
{
int sum = x+y+z;
return sum / 3 ; //这里是不是应该将sum返回呢?
}
/* Jack没有算出结果只说了一句话是不是应该用无返回值函数? */
void jackResult(int x, int y, int z)
{
printf("我算不出来\n");
}
int main()
{
int a, b, c;
a = 10;
b = 20;
c = 30;
//Jone的返回值类型是什么?
int jR = joneResult(a, b, c);
printf("Jone运算结果是:%d\n", jR);
printf("Jack运算结果是:");
//Jack没有算出结果只说了句话,是不是直接调用函数就可以了?
jackResult( a , b , c ) ;
return 0;
}
查看全部 -
复合运算符中运算符和等号之间是不存在空格的。
查看全部 -
如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如8/3 = 2;而两数中有一个为小数,结果则为小数。
只适合用两个整数进行取余运算,运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
查看全部 -
break语句与continue语句的区别是:break是跳出当前整个循环,continue结束本次循环开始下一次循环。查看全部
举报