『壹』 c語言——高手請進
太牛的程序了
++1你仔細找一下,你的程序中有一個++1的地方,這里有問題,不能對常量使用自加運算符,所以錯了。
for(scanf("%d", &s);*a-s;v=a[j*=v]-a[i],k=i<s,j+=
(v=j<s&&(!k&&!!printf(2+"\n\n%c"-(!l<<!j)," #Q"[l^v?(
l^j)&1:2])&&++1||a[i]<s&&v&&v-i+j&&v+i-j&&v+i-j))&&!( //在這一行
l%=s),v||(i==j?a[i+=k]=0:++a[i])>=s*k&&++a[--i])
『貳』 C語言高手請進!
strchr(查找字元串中第一個出現的指定字元)
相關函數
index,memchr,rinex,strbrk,strsep,strspn,strstr,strtok
表頭文件
#include<string.h>
定義函數
char * strchr (const char *s,int c);
函數說明
strchr()用來找出參數s字元串中第一個出現的參數c地址,然後將該字元出現的地址返回。
返回值
如果找到指定的字元則返回該字元所在地址,否則返回0。
範例
#include<string.h>
main()
{
char *s="";
char *p;
p=strchr(s,'5');
printf("%s\n",p);
}
執行
56789012345678901234567890
strstr(在一字元串中查找指定的字元串)
相關函數
index,memchr,rindex,strchr,strpbrk,strsep,strspn,strtok
表頭文件
#include<string.h>
定義函數
char *strstr(const char *haystack,const char *needle);
函數說明
strstr()會從字元串haystack 中搜尋字元串needle,並將第一次出現的地址返回。
返回值
返回指定字元串第一次出現的地址,否則返回0。
範例
#include<string.h>
main()
{
char * s="";
char *p;
p= strstr(s,"901");
printf("%s\n",p);
}
執行
901234567890123456789
『叄』 c語言高手請進
#include <stdio.h>
int main()
{
int i,j,k;
for(i=0;i<9;i++)
{
for(j=0;j<9;j++)
{
for(k=0;k<9;k++)
{
if((i+j+k)<10 && i!=0)
printf("%d%d%d ",i,j,k);
}
}
}
return 0;
} 都類似的,只要改改if里的條件就可以了...q幣啊..
『肆』 C語言高手請進! 急~~
if(i=j)
//相當於i=j=20
非零就是真的所以會輸出good
再循環一次時if裡面就變成了i=j=0
假就數else那句話
要記得c語言中非零就是真的
所以結果就那樣了
『伍』 C語言高手請進
因為a[4][3]是二維數組 所以a其實相當於二重指針 也就是指向另一個指針的指針
像這樣考試題是有技巧的 *是取一次值 []也相當於取指針的值
因為是二維數組 所以有二次*或[] 就能取到數組元素
所以:
A里a[i]+j是錯的
B里ptr[i]+j是錯的
C里*(ptr+i)是錯的
D里都是對的
當然這只是考試 如果你想學好指針 就要理解好指針和數組的原理
*(ptr+i)相當於ptr[i]
*(*(ptr+i)+j)相當於ptr[i][j]