急求高手,一个超级难的C语言题目
int getACK(int m,int n)
c语言比较难的题目 c语言比较难的题目及答案
{if(m==0) return n+1;
if (n==0) return getACK(m-1,1);
return getACK(m-1,getACK(m,n-1));
}根据字面意思就是用递归了
答案是4
C语言比较复杂的问题 求大大们帮帮忙
这问题悬赏200分啊,你悬赏200RMB有人给你做不,哈哈......
这叫帮你做项目,不是解答问题
可以帮你做,腾讯9814-55795
此问题so easy 楼主以前是否没有做过项目建议问能够当面讲话的同行。
这问题悬赏200分啊,你悬赏200RMB有人给你做不
C语言的题目 有几题很难
1#include
int main(){
int a;
printf("输入小朋友的年龄:");
scanf("%d", &a);
if(a==1 || a==2)
printf("小班\n");
else if(a==3 || a==4)
printf("中班\n");
else if(a==5 || a==6)
printf("大班\n");
else
printf("输入错误\n");
return 0;
}2.
#include
int main(){
float s=0, fz=2, fm=1, t;
int i;
for(i=1; i<=20; i++){
s+=fz/fm;
t=fz+fm;
fm=fz;
fz=t;
}printf("s=%.2f\n", s);
return 0;
}3.
#include
int main(){
float h=100, d=100;
int i;
for(i=2; i<=10; i++){
h/=2;
d+=2h;
}printf("d=%.2f\n", d);
return 0;
}
c语言高难度算法,菜鸟勿进! ^_^
说白了就是排序嘛,你把排序规则确定了不就完了。
struct s
{char val[3];
struct s next;
};
struct s start;
cr(struct s n)
{struct s q,qtemp=0;
for(q=start;q!=0;)
{if(strcmp(q->val,n->val)>0)
{if(qtemp==0)
{start=n;
n->next=q;
}else
{qtemp->next=n;
n->next=q;
}return;
}qtemp=q;
q=q->next;
}qtemp->next=n;
}main()
{int j;
struct s p;
char a[6][3]={{"B1"},{"A3"},{"13"},{"A2"},{"A5"},{"R"}};
printf("\n\n");
p=(struct s)malloc(sizeof(struct s));
strcpy(p->val,a[0]);
p->next=0;
start=p;
for(j=1;j<6;j++)
{p=(struct s)malloc(sizeof(struct s));
strcpy(p->val,a[j]);
p->next=0;
cr(p);
}for(p=start;p!=0;p=p->next)
{printf(" %s ",p->val);
}}
对啊
一组字符串排序有很多种排法啊
快来补充个说法吧
要不没人能帮你
简单的很,用普通的排序方法,比较操作就用strcmp(a1,a2).只是比较后不能直接交换字符窜,可以用间接的方法,交换字符窜数组的索引(如果你的字符窜是用数组来存储的话否则交换字符窜的首地址)。
你是想要这个么
#include
#include
#include
using namespace std;
struct Str
{char str[ 20 ];
friend bool operator < ( const Str &a, const Str &b )
{if ( strcmp( a.str, b.str ) >= 0 )
return 0;
else
return 1;
}};
int main( )
{char data[ 200 ], tmp[ 20 ];
int i = 1, n = 0, p;
Str str[ 50 ];
scanf("%s", data);
while ( data[ i ] != '\0' )
{p = 0;
while ( data[ i ] != ',' && data[ i ] != ')' )
tmp[ p++ ] = data[ i++ ];
tmp[ p ] = '\0';
strcpy( str[ n++ ].str, tmp );
i++;
}sort( str, str + n );
printf("(%s", str[ 0 ].str);
for ( i = 1; i < n; i++ )
printf(",%s", str[ i ].str);
printf(")\n");
return 0;
}
几道略有难度的C语言题 求高人给出源代码
说说算法吧:A.建立结构体,成员是序号、底面积和高,然后对每组测试用例的每组数据计算该结构体的值,接下来进行结构体二级排序(降序),先对高排序,然后对底面积排序,排序后输出每个结构体的序号即可;B.打表即可,公式是f(n)=f(n-1)+f(n-2)+f(n-3),f(1)=1,f(2)=2,f(3)=4;C.建立哈希数组,长度是30000,初始化为0,代表所有元素尚未添加进C中,然后对两行数据进行处理,每次遇到一个数就判断哈希数组中对应下标的元素是否为0,如果为0表示要将该元素添加进C中,并且C中的元素数目要加1,并接下来把哈希数组对应下标的元素置1,这样接下来遇到重复数据的时候(也就是某个数据在哈希数组中值为1)就可以滤除掉,所有元素都处理完毕后C的元素个数和有哪些元素就全部知道了;D.打表,预先对1~100000的数判断是否满足对称条件,并把满足对称条件的数在一个新的数组中记录下来,这样每次询问实际上就是输出这个新数组中对应下标的数据;E.建立mn的字符数组,并按题目要求模拟字母的摆放过程,全部摆放完毕后一次性输出这个数组就是要求的矩阵;F.数论题,结果应该是2^(n-1)
mod
1000000007,注意在计算2^(n-1)的时候可能会超过整数精度,因此较好的做法是每次乘以一个2(或者按位左移)就对1000000007取一次模,然后再把这个结果乘以2,对1000000007取模,...,这样做成立的原因是:(ab)
mod
c=
((a
mod
c)
b)
mod
c。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 12345678@qq.com 举报,一经查实,本站将立刻删除。