码迷,mamicode.com
首页 > 编程语言 > 详细

C语言例题系列-------第八天

时间:2017-01-16 01:22:08      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:c语言 例题 c语言例题

//15、有17个人围成一圈(编号为1-17),从第1号开始进行1、2、3报数,凡报3者退出,
//下一个人又从1开始报数..........直到最后一个人时为止。请问此人原来的位置是多少号?
#include<stdio.h>
int main()
{
int p[18]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17};
int i=1,j=1,k=1,m=17;
do
{
if(p[i])
{
if(j++>=3)//报1个数
{
p[i]=0;
j=1;
m--;
}
else
k=i;
if(m<=1)break;
}
if(i>=17)//如果是最后一个元素,下一个元素就是p[1]
i=1;
else//否则就是p[i+1]
i++;
}while(1);//不停地循环,直到需要停止
printf("%d\n",k);
return 0;
}
//16、有一行文字,要求删去其中某个字符。此行文字和要删除的字符均由键盘输入
/*#include<stdio.h>
int main()
{
char str1[100],str2[100];
char ch;
int i=0,k=0;
printf("\nplease input a phase\n");
while((str1[i]=getchar())!=‘\n‘)//给str1数组赋值
i++;
str1[i]=‘\0‘;//在字符串的最后加一个‘\0‘作为结束标志 
printf("\nDelete?");
scanf("%1s",&ch);
for(i=0;str1[i]!=‘\0‘;i++)
{
if(str1[i]!=ch)
str2[i-k]=str1[i];
else
k=k+1;
}
str2[i-k]=‘\0‘;
printf("\n%s\n",str2);
return 0;
}
*/
/*#include<stdio.h>
int main()
{
char a[10];
char b;
int i,j;
printf("please enter chars:");
gets(a);
printf("please enter delete char:");
b=getchar();
for(i=0;i<10;i++)
{if(a[i]==b)
for(j=i;j<10;j++)
{
a[j]=a[j+1];
}
}
printf("%s\n",a);
return 0;
}
*/


本文出自 “鹏哥的博客” 博客,谢绝转载!

C语言例题系列-------第八天

标签:c语言 例题 c语言例题

原文地址:http://pengge666.blog.51cto.com/11766700/1892133

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!