/*输出m~n之间的所有水仙花数*/
#include <stdio.h> int is(int number) //调用函数
{ int a, b, c; a = number/100; b = number/10%10; c = number%10; //判断是否为水仙花数
if(number == a*a*a+b*b*b+c*c*c)
return 1; return 0; } int main () { int m, n, t, i; scanf("%d%d", &m, &n); if(m > n){ t = m; m = n; n = t; } for(i=m; i<=n; i++){ if(is(i)) printf("%d\n", i); } return 0; }
//判断是否为回文数字 #include<stdio.h> int main(void) { int i,n,m; char s[10]; //输入10个字符 printf("enter 一串数字:"); i=0; while((s[i]=getchar())!='\n') i++; s[i]='\0'; for(n=0,m=i-1;n<m;n++,m--) //m,n分别指向首位两个字符 if(s[n]!=s[m]) //判断首位两个字符是否相等,若不相等则不需要继续 break; if(n>=m) printf("yes\n"); else printf("NO NO\n"); return 0; }
#include<stdio.h> int main(void) { int m; int huiwen(int m) for(m=11;m<=999;m++) printf("%d",m); } int huiwen(int m) { int i,m,n; for(n=0,m=i-1;n<m;n++,m--) if(n!=m) return 0; } return 1; }
//输入x、n后输出下列算式的值,fact(n)实现n!,mypow(x,n)实现x^n。
#include<stdio.h> #include<math.h> double fact(int n); //定义函数
int main(void) { int x,n,i,flag; double sum,mypow,result; printf("enter x,n:"); scanf("%d%d",&x,&n); flag=1; //赋初值
sum=0; for(i=1;i<=n;i++) result=fact(n); mypow=pow(x,n); sum=sum+flag*mypow/result; flag=-flag; printf("sum=%.2f\n",sum); return 0; } //定义函数,计算n的阶乘
double fact(int n) { int i; double product; product=1; for(i=1;i<=n;i++){ product=product*i; } return product; }
7
1) 怎样定义函数?如何调用函数?如何声明函数?
2) 什么是函数的参数?什么是形参、实参?在函数调用时,参数是如何传递的?
1.数学中函数的自变量在c语言中被称为参数
2.函数定义时,位于其首部的参数被称为形参,主调函数的参数被称为实参
3.程序运行遇到函数调用时,实参的值依次传给形参,这就是参数的传递
3) 在使用函数的过程中,要注意哪些问题?怎样确定函数的参数?
1.函数首部后面不能加分号,它和函数体一起构成完整的函数定义,实参和形参应一一对应,数量应相同;
2.按需分配,需要什么参数就设定什么参数
4) 如何使用局部变量和全局变量?
局部变量一般定义在函数或复合语句的开始处,全局变量一般定义在程序的最前面,即第一个函数的前面。
5) 什么是静态变量?
存放在静态存储区,不会因函数调用结束而被系统收回,而是持续到程序结束的变量。
8
1) 什么是数组? 为什么要使用数组? 如何定义数组?
1.数组是最基本的构造类型,它是一组相同类型数据的有序集合。
2.定义数组要确定哪些数据组成数组,数组中有多少个元素,属于哪个数据类型。
定义一维数组的一般形式为:类型符 数组名[常量表达式];
2) 如何引用数组元素?
引用数组元素的表示形式为:数组名[下标]。
3) 二维数组的元素在内存中按什么方式存放?
二维数组中元素排列的顺序是按行存放的,即在内存中先顺序存放第1行的元素,
接着再存放第二行的元素。
4) 什么是字符串? 字符串结束符的作用是什么?
1.字符串常量就是用一对双引号括起来的字符序列,即一串字符,它有一个结束标志'\0'。
2.起一个隔绝的作用,字符串遇'\0'结束,也就是说,第一个'\0'之后的其他数组元素与该字符串无关。
5) 如何实现字符串的存储和操作,包括字符串的输入和输出?
将字符串存入一维字符数组。
6) 怎样理解C语言将字符串作为一个特殊的一维字符数组?
字符串的有效长度就是有效字符的个数,所以也可算是特殊的字符数组。