C语言考研试题.docVIP

  • 334
  • 0
  • 约5.83千字
  • 约 10页
  • 2017-01-06 发布于贵州
  • 举报
C语言考研试题C语言考研试题

2006年北京师范大学452C语言考研试题 1 设圆的半径r=1.5,圆锥高h=3,求圆的周长和椎体体积。用scanf输入数据,输出计算结果。输出时要求有文字说明,取小数点后两位数字。 2 输入两个整数,求它们相除的余数。用带参的宏来实现。 3 求100~200之间的全部素数之和。 4 计算圆周率的近似值,直到最后一项的绝对值小于10的-6为止,圆周率=4*(1-1/3+1/5-1/7+1/9-……) 5 写一个函数,判断一字符串是否回文。回文是指顺序和倒读都一样的字符串。 #includestdio.h #includestring.h int hw(char f[25]) { int a, b; a = 0; //初始化a 指向f的首地址 b = strlen(f)-1; //指向f的最后一个 while (a = b) { if (f[a++] != f[b--]) { printf(No!\n); return 0; //程序结束 } } printf(Yes!\n); return 1; //a=b 是正确的 } int main() { char f[25]; int HW;// a, b = 0; 不需要 scanf(%s, f); HW = hw(f); return 0; }#include stdio.h void main() { FILE *from,*to; char in[100],out[100]; printf(请输入源文件名:\n); scanf(%s,in); printf(请输入目标文件名:\n); scanf(%s,out); if((from=fopen(in,r))==NULL) { printf(文件不存在!\n); exit(0); } if((to=fopen(out,w))==NULL) { printf(创建目标文件失败!\n); exit(0); } printf(.............); while(!feof(from)) { fputc(fgetc(from),to); } fclose(from); fclose(to); }#includeiostream //包含iostream的头文件 #includemath.h #includestring//字符串处理函数 using namespace std; class FindRoot//定义类FindRoot { private: float a,b,c; double r,q,x1,x2;//定义数据成员类型 int jud; public: void Input();//输入函数 void Display();//显示函数 void Find();//求根函数 }; //以上是类的声明部分,以下是类的实现部分 void FindRoot::Input() { cout这是一个求解ax2+bx+c=0的根的程序:endl;//总述程序 for(; ;) { cout输入方程系数a:; cina; if(a==0) cout错误:a不能为0!!!:endl; else break; }//输入a,并对a的可能情况进行判断 cout输入方程系数b:; cinb;//输入b cout输入方程系数c:; cinc;//输入c } void FindRoot::Find()//定义求根的函数 { float delta=b*b-4*a*c;//定义求根公式的数据类型 if(delta0) {jud=0; r=-b/(2*a); q=sqrt(-delta)/(2*a);//有两个共轭复数根的情况 } else if(delta==0) { x1=-b/(2*a); jud=1;//有两个相同的根的情况 } else { x1=(-b+sqrt (delta))/(2*a); x2=(-b-sqrt (delta))/(2*a); jud=2;//有两个不同的根的情况 } } void FindRoot::Display()//定义显示函数 { switch(jud) { case 0: {coutx1=r+qiendl; coutx2=r-qiendl;}break;//显示有共轭复数根时的解 case 1: coutx1=x2=x1endl;break;//显示有一实根时的解 case 2: coutx1=x1\nx2=x2endl;break;/

文档评论(0)

1亿VIP精品文档

相关文档