CP1250 猜数魔术 CP1239 字符串反向
我的做法:
#include <stdio.h>
int Magic(int m);
int main()
{
int m, ret;
printf("Input a sum:");
scanf("%d", &m);
ret = Magic(m);
if (ret != 1)
{
printf("The sum you calculated is wrong!\n");
}
return 0;
}
int Magic(int m)
{
int a, b, c, n;
for (a = 1; a < 9; a++)
{
for (b = 1; b < 9; b++)
{
for (c = 1; c < 9; c++)
{
n = 122 * a + 212 * b + 221 * c;//本质上是五种组合加在一起
if (m == n)
{
printf("The number is %d\n", 100 * a + 10 * b + c);
return 1;
}
}
}
}
return 0;
}
俺的做法;
#include <stdio.h> #include <string.h> char *change(char *p); int main(int argc, const char *argv[]) { printf("Enter string:"); char a[100]; scanf("%s",a); char *p=a; change(p); printf("a=%s\n",a); return 0; } char *change(char *p) { char n; char *p1; char *p2; int k; k=strlen(p); p1=p; p2=p+k-1; while(p1<p2) { n=*p1; *p1=*p2; *p2=n; p2--; p1++; } }
本质上还是有所收获,比如可以通过字符串长度的加减来判断前后,以及指针与地址的区别。就算是首地址也可以获取字符串的长度。
posted on 2023-01-04 01:36 harumakigohan 阅读(32) 评论(0) 收藏 举报
浙公网安备 33010602011771号