毫无疑问, 这个又是给新入门学C语言的小鲜肉准备的!

题解:

1. 直接两个循环就ok啦! 当初讲课的时候几乎讲过原题啦。

2. 直接 100的三次方就是1000000啦, 所以直接对某数的三次方开方(取int型), 然后再平方, 判断一下是否相等。

3. 可以直接扫描一下, 把大写字母都转化成小写, 然后逐个判断!

4. 求组合数, 直接按照求组合数的公式, 然后循环求解, 就好啦!

5. 直接循环求出 真因子和, 判断一下是否和原数相等否, 即可!(这个好像也讲过原题!)

6.多重集的组合,这就是一个公式的事儿!  这个公式的推导过程也很机智!

附加题: 仔细回想一下自己小学算除法的过程, 然后用一个数组保存余数。 用另一个数组判断同一个余数是否出现两次,当有一个余数出现两次时, 立刻停止往下除。 然后找出这两个余数出现的位置(加括号), 然后把各   余数*10 /除数  输出即可! 。 详见代码!

Talk is cheap, show me your code!

各题代码:

1.

 #include <iostream>
#include <cstdio>
using namespace std; int main()
{
int ok;
printf("%d\n", );
for(int i=; i<=; i++)
{
int ok = ;
for(int j=; j*j<=i; j++)
{
if(i%j==)
{
ok = ;
break;
}
}
if(ok) printf("%d\n", i);
}
return ;
}
#include<stdio.h>
#include<math.h>
const int maxn=;
int a[maxn];
int main()
{
for(int i=;i<maxn;i++)
a[i]=i;
for(int i=;i<sqrt(maxn);i++) if(a[i]) {
for(int j=i*i;j<maxn;j=j+i)
a[j]=;
}
for(int i=;i<maxn;i++)
if(a[i]!=) printf("%8d",i);
}

2.

 #include <iostream>
#include <cstdio>
#include <cmath>
using namespace std; int main()
{
for(int i=; i<=; i++)
{
int q = sqrt(i*i*i*1.0);
if(q*q==i*i*i) printf("%d\n", i*i*i);
}
return ;
}
#include<cstdio>
#include<cmath>
int main()
{
for(int i=;i<=;i++){
if(sqrt(i*i*i)*sqrt(i*i*i)==i*i*i);
printf("%8d\n",i*i*i);
}
return ;
}

3.

 #include <cstdio>
#include <cstring>
#include <iostream>
using namespace std; char str[]; int main()
{
while(scanf("%s", str)!=EOF)
{
getchar();
for(int i=; str[i]!='\0'; i++)
if(str[i]>='A'&&str[i]<='Z') str[i] += ;
int len = ;
for(int i=; str[i]!='\0'; i++)
{
if(str[i]!='#') len++;
for(int j=i+; str[j]!='\0'; j++)
if(str[i]==str[j]) str[j] = '#';
}
printf("%d\n", len);
}
return ;
}
#include<cstdio>
#include<cstring>
const int maxn=;
char s[maxn];
int main()
{
int a[]={};
while(~scanf("%s",s))
{
int sum=,len=strlen(s);
for(int i=;i<len;i++){ if(a[s[i]-]==||a[s[i]-]==)
continue; if(s[i]>=&&s[i]<=)
a[s[i]-]=; if(s[i]>=&&s[i]<=)
a[s[i]-]=;
}
for(int i=;i<;i++)
if(a[i]) sum++;
printf("%d\n",sum);
}
return ;
}

4.

 #include <iostream>
#include <cstdio>
using namespace std; int main()
{
int ans;
int n, m;
while(scanf("%d%d", &n, &m)!=EOF)
{
ans = ;
if(m<n-m) m = n-m;
for(int i=m+; i<=n; i++)
ans*=i;
for(int i=; i<=n-m; i++)
ans/=i;
printf("%d\n", ans);
}
return ;
}
#include<cstdio>
int comb(int n,int m)
{
if(m==||n==m)
return ;
return comb(n-,m)+comb(n-,m-);
}
int main()
{
int m,n;
while(scanf("%d%d",&n,&m)!=EOF){
printf("%d\n",comb(n,m));
}
return ;
}

5.

 #include <iostream>
#include <cstdio>
using namespace std; int main()
{
for(int i=; i<=; i++)
{
int sum = ;
for(int j=; j*j<=i; j++)
{
if(i%j==) sum += j + i/j;
if(j*j==i) sum-=j;
}
if(sum==i) printf("%d\n", i);
}
return ;
}
#include<cstdio>
const int maxn=;
int main()
{
int s;
for(int i=;i<=maxn;i++){
s=;
for(int j=;j<i;j++){
if(i%j==)
s+=j;
}
if(s==i) printf("%d\n",s);
}
return ;
}

6.

 #include <iostream>
#include <cstdio>
using namespace std; int main()
{
int ans=;
for(int i=+; i<=; i++)
ans*=i;
for(int i=; i<=-; i++)
ans/=i;
printf("%d\n", ans);
return ;
}

附加题:

 #include <cstdio>
#include <cstring>
#include <iostream>
using namespace std; bool vis[];
int ans[]; int main()
{
int a, b;
while(scanf("%d%d", &a, &b)!=EOF)
{
printf("%d", a/b);
if(a%b==) {printf("\n"); continue;}
printf(".");
int flag = -; int k=;
memset(vis, , sizeof(vis));
a = a%b; vis[a] = ; ans[k++] = a;
while(a%b)
{
a *= ;
int temp = a%b;
if(vis[temp])
{
for(int i=; i<k; i++)
{
if(temp==ans[i])
{
flag = i; break;
}
}
break;
}
else
{
ans[k++] = temp;
a = temp;
vis[temp] = ;
}
}
if(flag==-)
{
for(int i=; i<k-; i++)
printf("%d", ans[i]*/b);
}
else
{
if(flag==) printf("(");
else
{
for(int i=; i<flag; i++)
printf("%d", ans[i]*/b);
printf("(");
}
for(int i=flag; i<k; i++)
printf("%d", ans[i]*/b);
printf(")");
}
printf("\n");
}
return ;
}

小题精炼-----初试C语言的更多相关文章

  1. 关于SQL的几道小题详解

    关于SQL的几道小题详解 当我们拿到题目的时候,并不是急于作答,那样会得不偿失的,而是分析思路,采用什么方法,达到什么目的,还要思考有没有简单的方法或者通用的方法等等,这样才会达到以一当十的效果,这样 ...

  2. ...续上文(一个小萌新的C语言之旅)

    我们继续上次没介绍完的继续讲: 下面我们说一下二进制,二进制是计算技术中广泛采用的一种 数制. 二进制数据是用0和1两个 数码来表示的数.它的基数为2,进位规则是“逢二进一”.那么二进制怎么转化为十进 ...

  3. 常让人误解的一道js小题

    一道小题引发的深思 今天无意中看到一个js笔试题,不由得想起初学js那会被各种题目狂虐的心酸,虽说现在也会被笔试题所虐,但毕竟比之前好了很多,下面就是我的个人理解,欢迎拍砖.指正: var x = 1 ...

  4. 一些js小题(一)

    一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...

  5. 关于理解python类的小题

    今天看了python部落翻译的一篇<一道python类的小题>文章,感觉挺有启发性,记录下来: print('A') class Person(object): print('B') de ...

  6. 20181014xlVBA获取小题零分名单

    Sub GetZeroName() Dim Dic As Object Const SUBJECT = "科目名称" Dim Key As String Dim OneKey Di ...

  7. CF上的3道小题(2)

    CF上的3道小题(2) T1:CF630K Indivisibility 题意:给出一个数n,求1到n的数中不能被2到9中任意一个数整除的数. 分析:容斥一下,没了. 代码: #include < ...

  8. CF上的3道小题(1)

    CF上的3道小题 终于调完了啊.... T1:CF702E Analysis of Pathes in Functional Graph 题意:你获得了一个n个点有向图,每个点只有一条出边.第i个点的 ...

  9. python 小题

    python 小题:给定一个字符串,找出不含有重复字符的最长子串的长度.示例 1:输入: "abcabcbb"输出: 3 解释: 无重复字符的最长子串是 "abc&quo ...

随机推荐

  1. Sensor信号输出YUV、RGB、RAW DATA、JPEG【转】

    本文转载自:http://blog.csdn.net/southcamel/article/details/8305873 简单来说,YUV: luma (Y) + chroma (UV) 格式, 一 ...

  2. C++注意事项锦集

    1.std::string的.length()方法     计算代‘/’的字符串的长度会少计算‘/’的个数.比如:[warning]*****[/warning]  

  3. uboot启动参数

    bootcmd=nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0bootdelay=2baudrate=115200ethaddr=08:00:3 ...

  4. 编程之美_1.1 让CPU占用率曲线听你指挥

    听到有人说让要写一个程序,让用户来决定Windows任务管理器的CPU占用率. 觉得很好奇.但第一个想法就是写个死循环.哈哈.不知道具体的占用率是多少,但至少能保证在程序运行时,CPU的占用率终会稳定 ...

  5. FormData对象

    FF4中增加了一个很有意思的对象,FormData.通常我们提交(使用submit button)时,会把form中的所有表格元素的name与value组成一个queryString,提交到后台.这用 ...

  6. array DEMO

    [xiluhua@vm-xiluhua][~]$ declare -a array #申明数组 [xiluhua@vm-xiluhua][~]$ array=("a" " ...

  7. Hibernate,JPA注解@OneToOne_JoinColumn

    一对一(One-to-one),外键关联 用例代码如下: 数据库DDL语句 1,CAT表 create table CAT ( id CHAR) not null, create_time ), up ...

  8. php单例模式是怎么实现的呢

    <?php /** * 设计模式之单例模式 * $_instance必须声明为静态的私有变量 * 构造函数和析构函数必须声明为私有,防止外部程序new * 类从而失去单例模式的意义 * getI ...

  9. 进程外session

    进程外session A  SqlServer 1.管理员身份运行cmd 2.更换目录  cd c:\Windows\Microsoft.NET\Framework\v4.0.30319> 3. ...

  10. jqeury之平移轮播

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...