程序设计的逻辑思维
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void Guess(const char src[])
{
int i
int count = 1//猜次数的次数
int A_num//猜中的A的个数
int B_num//猜中的B的个数
char one, two, three, four//分别表示我们所输入的四个数字
while(1)
{
A_num = B_num = 0
fflush(stdin)
printf("请输入你第%d次猜测的数字(4位不重复):", count++)
scanf(" %c %c %c %c", &one, &two, &three, &four)
for(i = 0i <4++i)
{
if(src[i] == one)
{
if(i == 0)
++A_num
else
++B_num
}
else if(src[i] == two)
{
if(i == 1)
else
}
else if(src[i] == three)
{
if(i == 2)
else
}
else if(src[i] == four)
{
if(i == 3)
else
}
}
printf("------------------------------------------ ")
if(A_num == 4)
{
printf("恭喜你,全部猜对了! ")
break
}
else
{
printf("你猜测的结果是:%dA%dB ", A_num, B_num)
}
}
}
int main()
{
char chNum[4]//用于存放系统产生的随机4位数字
int i, index
srand((unsigned)time(0))//初始化随机种子
index = 0
//system("color F0")
//使用do...while循环让系统产生一个随机的4位数字
do
{
chNum[index] = rand() % 10 + '0'
//判断一下这个数字是否和前面产生的字符相同
for(i = 0i <index++i)
{
if(chNum[i] == chNum[index])
--index
}
++index
}while(index <4)
Guess(chNum)
return 0
}
编程如下:
#include
#include
#include
int main(int argc, char * argv[])
{
srand((unsigned)time(NULL))
int a = rand()%100
a+=1
int b,c
c = 0
while (c {
printf("Please enter a number: ")
if (scanf("%d", &b) == 0)
{
fprintf(stderr, "Invalid entry.\n")
return EXIT_FAILURE
}
else
{
if (b == a)
{
printf("You are correct, the number is %d!\n", a)
printf("You used %d times to get the answer.\n", c)
break
}
else if (b >a)
printf("The number is bigger than it suppose to.\n")
else
printf("The number is smaller than it suppose to.\n")
c++
}
if (c == 10)
{
printf("You used 10 times, please try again!\n")
break
}
}
return EXIT_SUCCESS
}
编程的注意事项:
1、程序不仅需要给计算机读 , 也要给程序员读。 程序设计风格的原则 , 代码应该清楚的和简单的 , 具有直截了当的逻辑 , 自然的表达式 , 通行的语言使用方式 , 有意义的名字和帮助作用和注释。
2、自定义类型名以大写字母开头,各单词之间以大写字母分隔,如 CallType (即骆驼式命 名法) 。 变量名以小写字母开头, 各单词之间以大写字母 分隔 (变量活动范围前缀以下划线 分隔) ,如 m_pReleaseIn。函数名以大写字母开头,各单词之间以大写字母分隔(进程、进 程页及子函数前缀以下划 线分隔) ,如 Sub_ErrorDealing。
3、命名宏定义时,表示最大个数时定义为 XXX_MAX_NUM(如最大子节点个数可用 SNODE_MAX_NUM表示) ,表示最大取值时定义为 XXX_MAX(如 PT 板 E1的最大取值 可用 PT_E1_MAX表示) 。定义最小个数时定义为 XXX_MIN_NUM,定义最小取值时定义 为 XXX_MIN。 (以防止下标使用时难以分辨是否需要减 1) 。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)