首页 技术 正文
技术 2022年11月15日
0 收藏 908 点赞 2,426 浏览 1112 个字

写一个程序,输出从 1 到 n 数字的字符串表示。

1. 如果 是3的倍数,输出“Fizz”;

2. 如果 是5的倍数,输出“Buzz”;

3.如果 同时是3和5的倍数,输出 “FizzBuzz”。

示例:

n = 15,返回:
[
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
"FizzBuzz"
]
 1 /**
2 * Return an array of size *returnSize.
3 * Note: The returned array must be malloced, assume caller calls free().
4 */
5 char** fizzBuzz(int n, int* returnSize) {
6 char string[] = "0123456789";
7 int i=0;
8 char tmp[25]={'\0'};
9 char ** p;
10 p=(char **)malloc(sizeof(char *) * n);
11 if(!p) return NULL;
12
13 //开辟空间 **p
14 for(i=0;i<n;i++){
15 p[i] = (char *) malloc(sizeof(char) * 9);
16 if(!p[i]) return NULL;
17 memset(p[i] , '\0',9);
18 }
19
20 for(i=1;i<=n;i++){
21 if(i%3 == 0 && i%5 == 0)
22 {memcpy(p[i-1], "FizzBuzz",strlen("FizzBuzz")); continue;}
23 else if(i%3 == 0){
24 memcpy(p[i-1],"Fizz",4);
25 continue;
26 }
27 else if(i%5 == 0){
28 memcpy(p[i-1],"Buzz",4);continue;
29 }
30 else{
31
32 //itoa(i,tmp,10);
33 int t=0,j=0,len;int k=i;
34 while(k != 0){
35 t = k%10;
36 tmp[j++] = string[t];
37 k = k/10;
38 }
39 //roll back
40 len =j;j=j-1;
41 while(k<len/2){
42 tmp[k] =tmp[k] ^ tmp[j];
43 tmp[j] =tmp[j] ^ tmp[k];
44 tmp[k] =tmp[k] ^ tmp[j];
45 k++;j--;
46 }
47 memcpy(p[i-1], tmp,strlen(tmp) );
48 }
49 }
50 //for(i=0;i<n;i++)
51 //printf("%s\n",p[i]);
52 return p;
53 }
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,083
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,558
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,407
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,180
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,817
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,900