c语言习题问题

求助C语言问题_百度知道
求助C语言问题
如果k值大于n的位数;
elseprintf(&%d%d&quot。输入一个正整数n和k,int k){int p,3)返回值4;scanf(&}}void main(){int n;digit(1456、k输出描述输出该n数中从右边开始的第k位数字的值。要求;else {p=(n%pow(10,k-1)。在主函数中调用digit函数。如,&n:digit(231456,则输出“error”;pow(10,k;if(p==-1)printf(&);%d&quot。输入样例样例输入1样例输入23421 6输出样例样例输出14样例输出2error#include&lt,&k),k),p;p=digit(n,输出该n数中从右边开始的第k位数字的值.h&gt,完成输出;pow(10,则输出“error”,k)&stdio,k))&#47,函数返回n中从右边开始的第k位数字的值;;error&1)return -1;if(n&#47c刚刚入门,int k);int digit(int n。如果k值大于n的位数返回-1,5) 返回值-1。输入描述输入正整数n: 编写函数int digit(int n,p),各位帮我看看哪里错了;,如果k值大于n的位数
提问者采纳
&#47,int k){%d%d&pow(10;% 左右都必须是int型,k;#include&).h&%d&
elseprintf(&error&pow函数要加math文件int digit(/
/else{p=(n%(int)pow(10;/if(n&#47,k-1),p;if(p==-1)printf(&quot.h&gt,&k),k),k)&lt,所以加强制类型转换就可以了1)return -1,k))/p=digit(n,&n;}}void main(){scanf(&;pow(10,p)#include&
提问者评价
其他类似问题
c语言的相关知识
按默认排序
其他2条回答
编译时请使用如下格式:
-lm 即可。
pow这个函数没有加#include&math.h&就可以使用吗?
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁c语言问题_百度知道
  &#160,a);a=3366;printf(&  main()    C;&#160、|-0003366|        |%-08d|&int B;   void &#160、下面程序的输出是________。(“□”表示一个空格) D、||&#160、|3366□□□□|  ;   A
提问者采纳
就按格式化字符表示的意思处理,也就是8位;-&quot,%后面的&quot,输出a这个数的十进制形式选择 C 输出 |3366□□□□|C语言的输出方式为,在printf函数里,右边补空格,否则就原样输出,如&#92.%表示输出后面的参数的格式;t,如果遇到格式化字符,d表示输出后面a值的十进制样式,08表示应该是8的8进制写法.在上面语句中,不足8位;及最后面的&quot,所以综合起来就是,靠左输出,表示输出一个Tab键;原样输出;|&quot,表示输出值靠左,输出占8个字符宽,表示输出数值占8位字符,第一个字符&|&号
其他类似问题
c语言的相关知识
按默认排序
其他2条回答
选C,输出的%-08在c语言中的含义为左对齐。
希望对你有所帮助,这是一个C语言的格式问题,共八位你好
c吧。%-08d表示a输出占八格,左对齐
是不是我太笨了……可不可以再稍微简单一点点解释?还是这只是一种机器语言?靠记?
您可能关注的推广回答者:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁c语言问题_百度知道
整数t。 输出,整数b。 算法, b)。 要求记录程序运行时间以及占用的空间求s:逐次回代法,以及(a:整数s。使得 sa+tb=(a输入, b):整数a
(a,b)是a,b的最大公因数
我有更好的答案
按默认排序
counter++;&=1000,t&&&qiuSandT(s;&return 0;&时间复杂度= &/endl,b;
counter++,&lt,g;&int qiuSandT(int &m=a%b,int &t;return 0,int & b,int y,int & counter){int max=0;}int gongyinshu(int &&endl,t;counter&t= &quot,y;&lt,我这里求s和t都小于正负1000吧,b;
return gongyinshu(b,我写一个时间上一般的。#include&&lt,s++){
for(t=-1;&lt,counter)g=gongyinshu(a;&m=0,-1000)中的s和t&quot,s&lt,counter);a=b;
/&#47,b)的值int counter=0。s和t的值有无穷多个,int & counter) /
counter++;if(a&g。为简化代码,s=0;(a;}}elsecout&lt,m;g&&&gt,counter)}int qiuSandT(int &t&0{if(s&&lt,y=b/&lta和b是正整数吧,counter)int x=a/}void max(int &&void max(int &/&b=max,所以st&lt,int &&quot,在下面的代码里把范围改了就行;
counter++;cout&if(m==0)
{&s&int main(){&lt,t=0,不是最优解;=b)max=a,要不是还要分着讨论写;&cout&&&g&g;因为ab为正整数;=-1000){for(s=1;&lt,int & int gongyinshu(int & a,int & counter),x;不存在范围在(+1000,int & counter){int i,t--)
if(s*x+t*y==1)
cout&t&s= &counter++,int & counter);counter用来计算时间复杂度cin&iostream&&lt,如果你觉得不够;g用来领取(a;&lt,=-1000,int y,int & counter);b;cout&lt,b;=1000&&t&max(a,b)= &quot,而st为整数;
&#47,int &&s&a&gt,int &t;&lt
最大公因数?最小公倍数吧。。。
(a,b)就是最大公因数,s和t不一定是正数。
(a,b)这是什么东西……
就是a,b的最大公因数
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
C语言题目.doc
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口C语言问题_百度知道
#include &stdio.h&#include &stdlib.h&#include &string.h&#define SIZE 3struct student_type{ int num[8]; char name[15]; char xibie[10]; int banji[10];} stud[SIZE];FILE*void input();void find();void menu();void main(){ menu();}void menu(){ printf(&\n\n****************************************************\n&); printf(&
欢迎使用白氏学生管理系统
\n&); printf(&***************************************************\n&); printf(&**********【1】 输入学生数据:\n&);
缉常光端叱得癸全含户
printf(&**********【2】 根据学号或者姓名查找学生数据:\n&);
printf(&请输入你的选项(1--2):&);
scanf(&%d&,&select);
switch(select)
case 1:input();
case 2:find(); }}void input(){ printf(&请输入相应的学生的学号、姓名、系别、班级,中间用空格进行隔开:\n&); for(i=0;i&SIZE;i++) scanf(&%d%s%s%d&,&stud[i].num,stud[i].name,stud[i].xibie,&stud[i].banji); fp=fopen(&D:\\student&,&wb&); for(i=0;i&SIZE;i++)
fwrite(&stud[i],sizeof(struct student_type),1,fp); printf(&回车键返回主菜单&); getchar(); getchar(); menu();}void find(){ int number,choice,i; char name[15]; FILE* printf(&【1】用学号查找
【2】用姓名查找\n&); scanf(&%d&,&choice); if(choice==1) { printf(&请输入需要查找的学号:\n&); scanf(&%d&,&number); fp=fopen(&D:\\student&,&rb&); fseek(fp,number*sizeof(struct student_type),0); fread(&stud[number],sizeof(struct student_type),1,fp); printf(&学生的姓名、学号、系别、班级分别为:\n&); printf(&%s %d %s %d&,stud[number].name,stud[number].num,stud[number].xibie,stud[number].banji); printf(&回车键返回主菜单:\n&); getchar(); getchar(); menu(); } else if(choice==2) {
printf(&请输入学生的姓名:\n&);
gets(name);
for(i=0;i&SIZE;i++)
if(strcmp(stud[i].name,name)==0);
fp=fopen(&D:\\student&,&rb&);
fseek(fp,i*sizeof(struct student_type),0);
fread(&stud[i],sizeof(struct student_type),1,fp);
printf(&学生的姓名、学号、系别、班级分别为:\n&);
printf(&%5s %4d %5s %5d&,stud[i].name,stud[i].num,stud[i].xibie,stud[i].banji);
printf(&回车键返回主菜单:\n&);
getchar();
getchar();
menu(); }}请问大家,这个函数,void find有问题,执行起来不对头,请问哪里错误了??????
我有更好的答案
按默认排序
答案应该是B,这个没什么好解释的(就是指针变量指向变量的地址)2
答案应该是D
如果直接用字符串对字符数组初始化的话字符数组的长度要比实际字符串长度大1的
因为字符串在字符数组中是以'\0'结束的,这个你也可以用sizeof() 分别测试一下
我已经测试过了A比B大1的3
答案应该是D,这个没的说,括号的作用就是避免二义4
答案应该是C,不要把 int *ptr();搞混了,题上的是返回一个整形数据的指针函数,后者是一个
返回指针的函数5
答案是A,呵呵,这个你好好想一下就明白了6
答案是A 47
答案是23 这个你要好好看一看,特别是(&Arr+1)它和(Arr+1)区别很大,前者在地址上加了
1而后者在地址上加了1*sizeof(int);8.
这道题你是不是搞错了,你仔细看看有很多错误的。9. 答案是 B 为了帮助你理解,对此程序我写了段代码#include&stdio.h&
void main(){
void func(char str[100]);
char str[100];
printf(&%d\n&,sizeof(str));//答案是100
func(str);
void func(char str[100]){
printf(&%d\n&,sizeof(str));//答案是4}为什么会出现这种情况呢,原因是因为两者有着本质性的区别,第一个sizeof(str)中的str是一个地址常量,它索引着一段大小为100的内存堆,而第二个sizeof(str)中的str是一个字符指针变量sizeof(str)的结果就是一个字符指针变量所具有的内存,它的内存应该是为4的10
答案是D二: 1.错,应该放在静态存储区(或全局数据区的)2 对3. 对4.错,不可能是float 型的5.对三1. int main(void) {
Unsigned char index = 0;//这个地方应该是unsigned int index=0;注意第一个u不能大写
While(index & 256)
Printf(“index value %d\n”,index);
Return 0; }2.char*f(){
//应该是static char s[4]={'0','1','2','3','\0'}; Char s[4]={‘1’,’2’,’3’,’0’};//关键字的开头是不能大写的,还有就是符号‘也不对 R//ruturn 第一个字母也不能大写,}
Void main(){ Char *s;//应该是char 第一个字母不能大写
s=f(); printf(“%s”,s);}//你这道题的本意是想通过函数调用来获得一个字符串的首地址从而在主函数中输出,//但是,有一点这个程序没有考虑到那就是当被调函数结束后那个char s[4] 所占内存将自动//操作系统回收,因为它只是个动态局部变量,所以要想达到目的应该是声明成静态变量的//static char s[4],还有一点错误就是字符串都要'\0'结尾否则输出的字符串的将不会是你想要的那样3.这道题没什么错误,能达到预期的效果,除了有几处拼写错误,例如你第一个是GetmMnory而第二个是GetMemory这一点你注意一下就可以了void GetMenory(char**p){ *p = (char*)malloc(100);}Void Test(void){ char*str = NULL; GetMemory(&str); strcpy(str,”hello morld”); printf(str);}4.这道题没什么语法错误,除了单引号格式不对,还有就就违反了字符串都要以'\0'结尾这一约定5.这道题没有什么语法错误,就是有个字符串函数写错了strcopy,应该写成 strcpy的四:你这道题具体是让做什么的,我不是太明白,是让建一个动态链表啊还是静态链表啊,请你把问题写详细点五。int judgment(int a[],int length )//这个函数是判断是否对称的{ for(int i=0;i&=length/2;i++)
if(a[i]!=a[length-i])
i缉常光端叱得癸全含户f(i==length/2+1)
return 0; }void main(void){ int a[10]; int num;
printf(&请输入你要检测的数\n&) ;
scanf(&%d&,&num); int length=0;//这个循环是为了把整数拆开放到一个整形数组中,拆开以后放进数组里面的刚好是和正常的数//反序的,不过这个不会影响结果的,因为只要数对称反序后一样对称,如果数不对称反序后依然不对称do {
int temp=num%10;
a[length]=
num=num/10;
} while(num&=10);a[length]=if( judgment(a,length))printf(&是\n&);}如果这个程序有什么不懂得话,可以提出来,随时帮你解析希望我的答案对你有点帮助……希望对你能有所帮助。
其他类似问题
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 c语言题目 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信